Android KeyListener

android :KeyListener这个接口在android.text.method中

它有如下子类:

BaseKeyListener,DateKeyListener,DateTimeKeyListener,

DialerKeyListener,DigitsKeyListener,MultiTapKeyListener,

NumberKeyListener,QwertyKeyListener,TextKeyListener,

TimeKeyListener

今天要使用KeyListener来让EditText只能输入某些字符,如数字,大小写a~z等等

keylistener有如下函数:

public int getInputType();

public boolean onKeyDown(View view, Editable text,

int keyCode, KeyEvent event);

public boolean onKeyUp(View view, Editable text,

int keyCode, KeyEvent event);

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

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

NumberKeyListener定义

public abstract class NumberKeyListener extends BaseKeyListener implements InputFilter

里面有一个抽象函数:protected abstract char[] getAcceptedChars();

这个函数就是用来编写自己想要输入的字符数据:

比如:

public char [] getAcceptedChars(){

char numberChars[] ={'0'  , '1' ,'2' ,' 3' , ' 4' , '5'  ,'6'  ,' 7 ' ,  '8'  , '9'};

return numberChars;

}

public char [] getAcceptedChars(){

char [] myChar ={'a','b','c','d','e','f','g','h','i'.......};

return myChar;

}

editText.setKeyListener(new numberKeyListener(){

..........

把抽象函数实现

});

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容