EditTextを数値のみ許可する
EditTextで数値のみに対応したいケースがよくありますよね。
そんな時の対応方法です。(キーボード入力も数値のみの対応)
基本的にアクティビティデザインのxmlファイル内の記述ですべて対応が可能です。
<EditText
android:id="@+id/startCnt"
android:layout_width="wrap_content""
android:layout_height="wrap_content"
android:layout_marginRight="20dp"
android:digits="01234567890"
android:gravity="right"
android:inputType="number"
android:maxLength="5"
android:text="0" />
■EditTextに数値のみ入力を可能にしたい制御は以下の記述で対応が可能です。
android:digits=”01234567890″
■キーボード入力で数値のみ対応した場合は以下の記述が必要になります。
android:inputType=”number”
■EditTextへの入力桁数の制御も以下の記述で対応可能になります。
android:maxLength=”5″ ※この場合は5桁対応。
今回は数値のみの入力制御対応でしたが、inputTypeを利用することによりいろんなタイプの入力制御を行うことが可能です。以下に一覧をまとめておきますの参考にどうぞ。
inputType | 内容説明 |
---|---|
text | テキスト入力 |
textCapCharacters | 大文字入力 |
textCapWords | 先頭文字を大文字にする場合 |
textCapSentences | 文章の先頭を大文字にする場合 |
textAutoCorrect | 文字入力を自動修正させる場合 |
textAutoComplete | 文字の補完入力に対応させる場合 |
textMultiLine | 複数行入力させる場合 |
textUri | URLを入力させるさせる場合 |
textEmailAddress | メールアドレスを入力させる場合 |
textEmailSubject | メール件名を入力させる場合 |
textShortMessage | ショートメッセージを入力させる場合 |
textLongMessage | ロングメッセージを入力させる場合 |
textPersonName | 人名を入力させる場合 |
textPostalAddress | 住所を入力させる場合 |
textPassword | パスワードを入力させる場合 |
textVisiblePassword | パスワード入力を表示させて入力する場合 |
textWebEditText | THMLを入力させる場合 |
textFilter | 他のデータでフィルタされた文字を入力する場合 |
textPhonetic | 発音記号を入力させる場合 |
numberSigned | 符号付きの数値を入力させる場合 |
numberDecimal | 少数入力をさせる場合 |
phone | 電話番号を入力させる場合 |
datetime | 日時を入力させる場合 |
date | 日付を入力させる場合 |
time | 時刻を入力させる場合 |