Android EditTextフィールドから特殊文字を制限するには?
23889 次
5 に答える
44
android:digits="abcde.....0123456789"
属性を追加しようとしましたか?数値フィールドであることを指定していandroid:digits
ますが、文字や特殊文字も受け入れるように設定しても機能します (SDK-7 でテスト済み)。
これが機能しない場合は、次をKeyListener
参照して実装する必要があります: http://developer.android.com/reference/android/widget/TextView.html#setKeyListener(android.text.method.KeyListener)
于 2010-08-02T07:08:46.753 に答える
6
このメソッドに EditText オブジェクトを渡すだけです。また、ブロックする値を変数 blockCharacterSet に追加します。
private void disableSpecialChar(EditText editText) {
final String blockCharacterSet = "<>";
InputFilter filter = new InputFilter() {
@Override
public CharSequence filter(CharSequence source, int start, int end,
Spanned dest, int dstart, int dend) {
if (source != null && blockCharacterSet.contains(("" + source))) {
return "";
}
return null;
}
};
editText.setFilters(new InputFilter[] { filter });
}
于 2015-03-26T06:36:46.773 に答える