0
如何使EditField
只接受字母,它不應該接受任何數字,blackberry.ie中的任何特殊字符)editfield應該只接受字母字符。如何創建只接受黑莓文本的EditField?
如何使EditField
只接受字母,它不應該接受任何數字,blackberry.ie中的任何特殊字符)editfield應該只接受字母字符。如何創建只接受黑莓文本的EditField?
您可以創建自己的類(即AlphaEditField)並使其擴展EditField。然後覆蓋該keydown功能做你想做的,像這樣:
protected boolean keyDown(int keycode, int time) {
char ch = net.rim.device.api.ui.Keypad.map(keycode);
if(Character.isUpperCase(ch) || Character.isLowerCase(ch)) {
return super.keyDown(keycode, time);
}
return false;
}
的大寫和小寫的功能將在不能的情況下,被定義的任何字符,又名...任何返回false不字母表。
我會定義,像這樣一個TextFilter:
myEditField.setFilter(new TextFilter(){
public char convert(char character, int status) {
return character; // because you're trying to disallow characters, not convert them.
}
public boolean validate(char character) {
return (Character.isUpperCase(character) || Character.isLowerCase(character));
}
});