Added in API level 1

TextWatcher


interface TextWatcher : NoCopySpan
AbsListView

Base class that can be used to implement virtualized lists of items.

PasswordTransformationMethod

PhoneNumberFormattingTextWatcher

Watches a android.widget.TextView and if a phone number is entered will format it.

ExpandableListView

A view that shows items in a vertically scrolling two-level list.

GridView

A view that shows items in two-dimensional scrolling grid.

ListView

Displays a vertically-scrollable collection of views, where each view is positioned immediatelybelow the previous view in the list.

When an object of this type is attached to an Editable, its methods will be called when the text is changed.

Summary

Public methods
abstract Unit

This method is called to notify you that, somewhere within s, the text has been changed.

abstract Unit
beforeTextChanged(s: CharSequence!, start: Int, count: Int, after: Int)

This method is called to notify you that, within s, the count characters beginning at start are about to be replaced by new text with length after.

abstract Unit
onTextChanged(s: CharSequence!, start: Int, before: Int, count: Int)

This method is called to notify you that, within s, the count characters beginning at start have just replaced old text that had length before.

Public methods

afterTextChanged

Added in API level 1
abstract fun afterTextChanged(s: Editable!): Unit

This method is called to notify you that, somewhere within s, the text has been changed. It is legitimate to make further changes to s from this callback, but be careful not to get yourself into an infinite loop, because any changes you make will cause this method to be called again recursively. (You are not told where the change took place because other afterTextChanged() methods may already have made other changes and invalidated the offsets. But if you need to know here, you can use Spannable.setSpan in onTextChanged to mark your place and then look up from here where the span ended up.

beforeTextChanged

Added in API level 1
abstract fun beforeTextChanged(
    s: CharSequence!,
    start: Int,
    count: Int,
    after: Int
): Unit

This method is called to notify you that, within s, the count characters beginning at start are about to be replaced by new text with length after. It is an error to attempt to make changes to s from this callback.

onTextChanged

Added in API level 1
abstract fun onTextChanged(
    s: CharSequence!,
    start: Int,
    before: Int,
    count: Int
): Unit

This method is called to notify you that, within s, the count characters beginning at start have just replaced old text that had length before. It is an error to attempt to make changes to s from this callback.