Мені теж це було цікаво, Деніел Вілсон зібрав документацію, але для невченого ока це не означає багато. Ось про що йдеться: "режим витягування" стосується типу подання, яке відображається, коли місця замало, наприклад альбомної орієнтації на телефоні. Я використовую Galaxy S4 з клавіатурою Google як редактор методів введення (IME).
Пейзажний інтерфейс без видимого IME
Виходячи з фокусу (на описі), ви можете побачити, TextInputLayout
як підказка висувається за межі редактора. Тут нічого особливого, це те, що TextInputLayout
повинно робити.
Пейзажний інтерфейс редагування порожнього поля Ім'я
Редагуючи ім'я, ви бачите, що IME не дає вам натяку на те, що ви редагуєте.
Редагування пейзажного інтерфейсу порожнє поле Опис
Редагуючи опис, ви бачите, що IME дає вам підказку про те, що ви редагуєте.
Розмітка XML
Різниця між цими двома областями їх типу EditText
VS TextInputEditText
. Важливим тут є те, що TextInputLayout
має, android:hint
а не загорнутий EditText, це той випадок, коли TextInputEditText
кілька рядків коду Java мають велике значення.
Поле імені
<android.support.design.widget.TextInputLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:hint="Item Name"
>
<EditText
android:id="@+id/name"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
/>
</android.support.design.widget.TextInputLayout>
Поле опису
<android.support.design.widget.TextInputLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:hint="Item Description"
>
<android.support.design.widget.TextInputEditText
android:id="@+id/description"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:inputType="textMultiLine"
android:minLines="4"
android:scrollbars="vertical"
/>
</android.support.design.widget.TextInputLayout>