to top
Android APIs
Added in API level 1
public interface

KeyListener

android.text.method.KeyListener
Known Indirect Subclasses

Class Overview

Interface for converting text key events into edit operations on an Editable class. Note that for most cases this interface has been superceded by general soft input methods as defined by InputMethod; it should only be used for cases where an application has its own on-screen keypad and also wants to process hard keyboard events to match it.

Key presses on soft input methods are not required to trigger the methods in this listener, and are in fact discouraged to do so. The default android keyboard will not trigger these for any key to any application targetting Jelly Bean or later, and will only deliver it for some key presses to applications targetting Ice Cream Sandwich or earlier.

Summary

Public Methods
abstract void clearMetaKeyState(View view, Editable content, int states)
Remove the given shift states from the edited text.
abstract int getInputType()
Return the type of text that this key listener is manipulating, as per InputType.
abstract boolean onKeyDown(View view, Editable text, int keyCode, KeyEvent event)
If the key listener wants to handle this key, return true, otherwise return false and the caller (i.e.
abstract boolean onKeyOther(View view, Editable text, KeyEvent event)
If the key listener wants to other kinds of key events, return true, otherwise return false and the caller (i.e.
abstract boolean onKeyUp(View view, Editable text, int keyCode, KeyEvent event)
If the key listener wants to handle this key release, return true, otherwise return false and the caller (i.e.

Public Methods

public abstract void clearMetaKeyState (View view, Editable content, int states)

Added in API level 3

Remove the given shift states from the edited text.

public abstract int getInputType ()

Added in API level 3

Return the type of text that this key listener is manipulating, as per InputType. This is used to determine the mode of the soft keyboard that is shown for the editor.

If you return TYPE_NULL then no soft keyboard will provided. In other words, you must be providing your own key pad for on-screen input and the key listener will be used to handle input from a hard keyboard.

If you return any other value, a soft input method will be created when the user puts focus in the editor, which will provide a keypad and also consume hard key events. This means that the key listener will generally not be used, instead the soft input method will take care of managing key input as per the content type returned here.

public abstract boolean onKeyDown (View view, Editable text, int keyCode, KeyEvent event)

Added in API level 1

If the key listener wants to handle this key, return true, otherwise return false and the caller (i.e. the widget host) will handle the key.

public abstract boolean onKeyOther (View view, Editable text, KeyEvent event)

Added in API level 3

If the key listener wants to other kinds of key events, return true, otherwise return false and the caller (i.e. the widget host) will handle the key.

public abstract boolean onKeyUp (View view, Editable text, int keyCode, KeyEvent event)

Added in API level 1

If the key listener wants to handle this key release, return true, otherwise return false and the caller (i.e. the widget host) will handle the key.