可能最好的方法是使用传递到EditText的
addTextChangedListener()方法的
TextWatcher.以下是一个使用示例:
editText.addTextChangedListener(new TextWatcher() {
@Override
public void afterTextChanged(Editable e) {
String textFromEditView = e.toString();
validateText(textFromEditView);
}
@Override
public void beforeTextChanged(CharSequence s, int start, int count, int after) {
//nothing needed here...
}
@Override
public void onTextChanged(CharSequence s, int start, int before, int count) {
//nothing needed here...
}
});
我将使用validateText(String)方法的实现作为读者的练习,但我想它应该很容易.我会使用:
>一个简单的正则表达式.
>或者因为这种情况很容易,检查字符串的长度是8,并查看每个字符.有一个简单的实用程序类来检查字符的特征. Character.isDigit(char)和Character.isLetter(char)