EditText は簡単に使えますが、なにも手当しないと、ユーザーがいくらでも文字を入力して、レイアウトが崩れてしまいます。だらだらと入力が表示されてしまいます
EditText では文字数など幾つかの制限を設定することができます。
Android Studio
2021.1.1
2021.1.1
EditText 設定
EditTextではよく使うと思われる以下のことを設定することができます。
ヒント:
- 名前入力のテキストボックスでヒントを表示、例えば「password」などのヒントを入れる
1android:hint="password"
入力文字数を制限:
- 最大入力可能文字数を設定
1android:maxLength="4"
行数を制限:
- 行数を1行に固定
1android:maxLines="1"
これらの設定をレイアウトファイルに記述してみます。
activity_main.xml
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 |
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:background="#dfe" android:orientation="vertical" android:padding="10dp" tools:context=".MainActivity"> <!-- 指定なし --> <EditText android:id="@+id/edit_text1" android:hint="@string/hint1" android:autofillHints="@string/hint1" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_margin="20dp" android:background="#ffffff" android:gravity="start" android:inputType="text" /> <!-- hint --> <EditText android:id="@+id/edit_text2" android:hint="@string/hint2" android:autofillHints="@string/hint2" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_margin="20dp" android:background="#ffffff" android:gravity="start" android:inputType="text" /> <!-- 文字数制限 --> <EditText android:id="@+id/edit_text3" android:hint="@string/hint3" android:autofillHints="@string/hint3" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_margin="20dp" android:background="#ffffff" android:gravity="start" android:maxLength="4" android:inputType="text" /> <!-- 1行数制限 --> <EditText android:id="@+id/edit_text4" android:hint="@string/hint4" android:autofillHints="@string/hint4" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_margin="20dp" android:background="#ffffff" android:maxLines="1" android:gravity="start" android:inputType="text" /> </LinearLayout> |
strings.xml
1 2 3 4 5 6 7 |
<resources> <string name="app_name">YourAppName</string> <string name="hint1">指定なし</string> <string name="hint2">hint</string> <string name="hint3">文字数制限</string> <string name="hint4">1行数制限</string> </resources> |
関連ページ: