Comment faire EditField
qui accepte uniquement les alphabets et il ne devrait pas accepter de caractères numériques, n'importe quel caractère spécial dans blackberry.ie) ce champ d'édition doit accepter uniquement le caractère alphabétique.Comment créer EditField Qui n'accepte que du texte dans Blackberry?
0
A
Répondre
1
Vous pouvez créer votre propre classe (c'est-à-dire AlphaEditField) et l'agrandir. Ensuite, passer outre la fonction de keyDown faire ce que vous voulez, quelque chose comme ceci:
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;
}
Les fonctions majuscules et minuscules retourneront faux pour tout caractère qui ne peut pas être défini dans le cas où, alias ... quoi que ce soit pas l'alphabet.
1
Je définirais un Textfilter comme ceci:
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));
}
});