我正在處理某個項目,其中某些edittext中我只希望它包含字母(小寫字母和大寫字母)和空格。所以我設置它在代碼中動態如下:在文本中出現條件時,在edittext中輸入的文本在較新的android版本上消失
txtoccupation.setFilters(new InputFilter[] {
new InputFilter() {
public CharSequence filter(CharSequence src, int start,
int end, Spanned dst, int dstart, int dend) {
if(src.equals("")){ // for backspace
return src;
}
if(src.toString().matches("[a-zA-Z ]+")){
return src;
}
return "";
}
}
});
上面的代碼工作在我的較舊的Android 2.6 phone.That罰款,當我在比字母和空格之外的任何類型它不會對edittext.But所示,當我嘗試上述新的kitkat設備,文本消失,並在下面的建議中顯示。我該如何解決這個問題?
編輯: 我使用的輸入濾波器
filter = new InputFilter() {
public CharSequence filter(CharSequence source, int start, int end,
Spanned dest, int dstart, int dend) {
for (int i = start; i < end; i++) {
if (!Character.isLetter(source.charAt(i))&&!Character.isWhitespace(source.charAt(i))) {
return "";
}
if(Character.isWhitespace(source.charAt(i))){
return " ";
}
}
return null;
}
};
你使用的是什麼字符編碼服用? – 2014-09-26 12:59:49
@SanjayManohar我不明白你在說什麼。 – 2014-09-26 13:01:04