[ Web Proxy ]
URL:
Viewing: https://developer.android.com/reference/kotlin/android/text/method/NumberKeyListener [Back]  [Original]

NumberKeyListener  |  API reference  |  Android Developers Skip to main content
Essentials Design & Plan Develop Google Play Blog
Search:
Android Studio
Android Developers [Android Developers]
Stay organized with collections Save and categorize content based on your preferences.
Added in API level 1

NumberKeyListener


abstract class NumberKeyListener : BaseKeyListener, InputFilter
kotlin.Any
android.text.method.MetaKeyKeyListener
android.text.method.BaseKeyListener
android.text.method.NumberKeyListener

For numeric text entry

As for all implementations of KeyListener, this class is only concerned with hardware keyboards. Software input methods have no obligation to trigger the methods in this class.

Summary

Inherited constants
Public constructors

Public methods
open CharSequence!
filter(source: CharSequence!, start: Int, end: Int, dest: Spanned!, dstart: Int, dend: Int)

This method is called when the buffer is going to replace the range dstart dend of dest with the new text from the range start end of source.

open Boolean
onKeyDown(view: View!, content: Editable!, keyCode: Int, event: KeyEvent!)

Handles presses of the meta keys.

Protected methods
abstract CharArray

You can say which characters you can accept.

open Int
lookup(event: KeyEvent!, content: Spannable!)

open static Boolean
ok(accept: CharArray!, c: Char)

Inherited functions

Public constructors

NumberKeyListener

NumberKeyListener()

Public methods

filter

Added in API level 1
open fun filter(
    source: CharSequence!,
    start: Int,
    end: Int,
    dest: Spanned!,
    dstart: Int,
    dend: Int
): CharSequence!

This method is called when the buffer is going to replace the range dstart dend of dest with the new text from the range start end of source. Return the CharSequence that you would like to have placed there instead, including an empty string if appropriate, or null to accept the original replacement. Be careful to not to reject 0-length replacements, as this is what happens when you delete text. Also beware that you should not attempt to make any changes to dest from this method; you may only examine it for context. Note: If source is an instance of Spanned or Spannable, the span objects in the source should be copied into the filtered result (i.e. the non-null return value). TextUtils.copySpansFrom can be used for convenience if the span boundary indices would be remaining identical relative to the source.

onKeyDown

Added in API level 1
open fun onKeyDown(
    view: View!,
    content: Editable!,
    keyCode: Int,
    event: KeyEvent!
): Boolean

Handles presses of the meta keys.

Protected methods

getAcceptedChars

Added in API level 1
protected abstract fun getAcceptedChars(): CharArray

You can say which characters you can accept.

Return
CharArray This value cannot be null.

lookup

Added in API level 1
protected open fun lookup(
    event: KeyEvent!,
    content: Spannable!
): Int

ok

Added in API level 1
protected open static fun ok(
    accept: CharArray!,
    c: Char
): Boolean

Content and code samples on this page are subject to the licenses described in the Content License. Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.

Last updated 2026-02-13 UTC.

[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Missing the information I need","missingTheInformationINeed","thumb-down"],["Too complicated / too many steps","tooComplicatedTooManySteps","thumb-down"],["Out of date","outOfDate","thumb-down"],["Samples / code issue","samplesCodeIssue","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2026-02-13 UTC."],[],[]]

Web Proxy Viewer  |  New URL  |  Original Page