AndroidのEditTextにアルファベットのみを入力するにはどうすればよいですか?
110697 次
12 に答える
61
edittext.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 edittext.getText().toString();
}
}
});
ただし、徹底的にテストしてください!
于 2012-01-27T08:40:36.867 に答える
23
EditText state = (EditText) findViewById(R.id.txtState);
Pattern ps = Pattern.compile("^[a-zA-Z ]+$");
Matcher ms = ps.matcher(state.getText().toString());
boolean bs = ms.matches();
if (bs == false) {
if (ErrorMessage.contains("invalid"))
ErrorMessage = ErrorMessage + "state,";
else
ErrorMessage = ErrorMessage + "invalid state,";
}
于 2010-03-22T11:54:35.597 に答える
21
Xml を使用すると、xml (editText) に次のコードを入力して簡単に実行できます...
android:digits="abcdefghijklmnopqrstuvwxyz"
文字のみ受け付けます...
于 2013-10-24T16:04:20.250 に答える
11
コード edittext xml ファイルを配置し、
android:digits="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"
于 2016-03-12T07:30:14.533 に答える
1
これを試して
<EditText
android:id="@+id/EditText1"
android:text=""
android:inputType="text|textNoSuggestions"
android:textSize="18sp"
android:layout_width="80dp"
android:layout_height="43dp">
</EditText>
他のinputTypeは ここにあります..
于 2010-03-02T08:59:00.620 に答える
1
android:inputType="text"
xmlファイルで属性を使用するだけです
例: ユーザーに電子メール アドレス テキストを提供してもらいたい場合:
<EditText
android:id="@+id/user_address"
android:inputType="textEmailAddress"
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>
Androidスタジオのオートコンプリート機能を使用して、他の多くの入力属性を自由に確認してください: オートコンプリートデモ
于 2022-02-13T20:19:38.770 に答える