Saya juga bertanya-tanya tentang ini, Daniel Wilson mengumpulkan dokumentasi, tetapi bagi mata yang tidak terlatih itu tidak berarti banyak. Ini semua tentang: "mode ekstrak" mengacu pada jenis tampilan yang ditampilkan saat ruang terlalu kecil, misalnya lanskap di ponsel. Saya menggunakan Galaxy S4 dengan Google Keyboard sebagai editor metode masukan (IME).
UI lanskap tanpa IME yang terlihat
Berdasarkan fokus (pada Deskripsi), Anda dapat melihat TextInputLayout
aksi mendorong petunjuk di luar editor. Tidak ada yang istimewa di sini, inilah yang TextInputLayout
seharusnya dilakukan.
Pengeditan UI lanskap bidang Nama kosong
Mengedit Nama Anda dapat melihat bahwa IME tidak memberi Anda petunjuk tentang apa yang Anda edit.
Pengeditan UI lanskap bidang Deskripsi kosong
Mengedit Deskripsi Anda dapat melihat bahwa IME memberi Anda petunjuk tentang apa yang Anda edit.
XML tata letak
Perbedaan antara kedua bidang tersebut adalah tipe EditText
VS-nya TextInputEditText
. Hal penting di sini adalah yang TextInputLayout
memiliki android:hint
dan bukan EditText yang dibungkus, ini adalah kasus ketika TextInputEditText
beberapa baris kode Java membuat perbedaan besar.
Bidang nama
<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>
Bidang deskripsi
<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>