android EditTextのいろいろな入力制限
今回は、androidのEditTextの入力制限について書きます。
通常のEditTextでは、このような形で書くと思います↓
<EditText android:id="@+id/edittext" android:layout_width="fill_parent" android:layout_height="wrap_content" />
EditText editText = (EditText) findViewById(id.edittext); String text = editText.getText().toString();
この状態でも問題はありませんが、例えば「数値だけ入力できるようにしたい」や「大文字だけ入力できるようにしたい」という時があると思います。
今回は、このような入力制限を行う方法を中心に書いていきます。
EditTextの入力制限は、かなり多くの種類があります。
10個以上は、あります(笑)
詳しくは、こちらに書かれているので、見といて損はないです。
まず、コードの書き方から書きます。
xmlの場合は、こう書きます。
<EditText android:id="@+id/edittext" android:layout_width="fill_parent" android:layout_height="wrap_content" android:inputType="textCapCharacters" />
「android:inputType="・・・"」の部分が入力制限の設定をしているところです。
ちなみに「textCapCharacters」というのは、大文字のみという制限です。
javaの場合は、こう書きます。
EditText edittext = (EditText)findViewById(R.id.edittext); edittext.setInputType( InputType.TYPE_CLASS_TEXT);
「setInputType( InputType.・・・)」の部分が入力制限の設定をしているところです。
ちなみに「TYPE_CLASS_TEXT)」というのは、文字列のみという制限をつけれます。
ここからは、使えそうなものを紹介します。
-「textPassword」
<EditText android:id="@+id/edittext" android:layout_width="fill_parent" android:layout_height="wrap_content" android:inputType="textPassword" />
パスワード入力する場合に使います。
-「number」
<EditText android:id="@+id/edittext" android:layout_width="fill_parent" android:layout_height="wrap_content" android:inputType="number" />
数値入力のみとなります。
-「textMultiLine」
<EditText android:id="@+id/edittext" android:layout_width="fill_parent" android:layout_height="wrap_content" android:inputType="textMultiLine" />
複数行入力できるようになります。
-「none」
<EditText android:id="@+id/edittext" android:layout_width="fill_parent" android:layout_height="wrap_content" android:inputType="none" />
入力不可にします。
他にもあるので、詳しくは知りたい人は、コチラやコチラを見てください。
これで、終わります。