Ketika saya menekan 'Berikutnya', fokus pada Teks Edit Pengguna harus dipindahkan ke Kata Sandi. Kemudian, dari Kata Sandi, itu harus bergerak ke kanan dan seterusnya. Bisakah Anda membantu saya tentang cara membuat kode?
<LinearLayout
android:id="@+id/LinearLayout01"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="horizontal" >
<TextView
android:id="@+id/username"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="User Name*" />
<EditText
android:id="@+id/txt_User"
android:layout_width="290dp"
android:layout_height="33dp"
android:singleLine="true" />
</LinearLayout>
<LinearLayout
android:id="@+id/LinearLayout02"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="horizontal" >
<TextView
android:id="@+id/password"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Password*" />
<EditText
android:id="@+id/txt_Password"
android:layout_width="290dp"
android:layout_height="33dp"
android:singleLine="true"
android:password="true" />
<TextView
android:id="@+id/confirm"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Password*" />
<EditText
android:id="@+id/txt_Confirm"
android:layout_width="290dp"
android:layout_height="33dp"
android:singleLine="true"
android:password="true" />
</LinearLayout>
android
android-edittext
androidBoomer
sumber
sumber
Jawaban:
Penanganan Fokus
Gerakan fokus didasarkan pada algoritma yang menemukan tetangga terdekat dalam arah tertentu. Dalam kasus yang jarang terjadi, algoritma default mungkin tidak cocok dengan perilaku pengembang yang dimaksud.
Ubah perilaku default navigasi terarah dengan menggunakan atribut XML berikut:
Selain navigasi terarah Anda dapat menggunakan navigasi tab. Untuk ini, Anda perlu menggunakan
Untuk mendapatkan tampilan tertentu agar fokus, hubungi
Untuk mendengarkan acara fokus perubahan tertentu, gunakan a
View.OnFocusChangeListener
Tombol keyboard
Anda dapat menggunakannya
android:imeOptions
untuk menangani tombol ekstra pada keyboard Anda.Konstanta imeOptions mencakup berbagai tindakan dan bendera, lihat tautan di atas untuk nilainya.
Contoh nilai
ActionNext :
ActionDone :
Contoh kode:
Jika Anda ingin mendengarkan acara perbaikan gunakan a
TextView.OnEditorActionListener
.sumber
android:nextFocusForward="@+id/.."
melakukan trik.android:imeOptions="actionNext"
semua EditText saya dan masalahnya hilang. Terima kasih banyak.harus membawa efek yang sama. Setelah menekan berikutnya untuk membawa fokus ke elemen berikutnya.
gunakan ini sebagai tambahan jika Anda tidak ingin tampilan berikutnya mendapatkan fokus
sumber
tambahkan editText Anda
tambahkan properti ke aktivitas dalam manifes
dalam file tata letak ScrollView ditetapkan sebagai tata letak root atau induk semua ui
jika Anda tidak ingin setiap kali itu ditambahkan, buat gaya: tambahkan gaya dalam nilai / style.xml
default / gaya:
sumber
android:singleLine="true"
didepresiasi.Gunakan baris berikut
parentedit
adalah ID selanjutnya yangEditText
akan difokuskan.Baris di atas juga perlu baris berikut.
atau
Terima kasih atas sarannya @Alexei Khlebnikov.
sumber
android:inputType="text"
atauandroid:inputType="number"
.Menambahkan bidang ekstra
bekerja dalam kasus saya!
sumber
Tiga baris ini melakukan keajaiban
sumber
Di penangan onEditorAction Anda, ingatlah bahwa Anda harus mengembalikan boolean yang menunjukkan jika Anda menangani tindakan (benar) atau jika Anda menerapkan beberapa logika dan menginginkan perilaku normal (salah), seperti dalam contoh berikut:
Saya menemukan ini ketika saya kembali benar setelah melakukan logika saya karena fokus tidak bergerak.
sumber
cukup gunakan kode berikut ini akan berfungsi dengan baik dan gunakan inputType untuk setiap edittext dan tombol berikutnya akan muncul di keyboard.
sumber
Dalam beberapa kasus, Anda mungkin perlu memindahkan fokus ke bidang berikutnya secara manual:
Anda mungkin memerlukan ini jika, misalnya, Anda memiliki bidang teks yang membuka pemilih tanggal saat diklik, dan Anda ingin fokus berpindah secara otomatis ke bidang input berikutnya setelah tanggal dipilih oleh pengguna dan pemilih ditutup. Tidak ada cara untuk menangani ini dalam XML, itu harus dilakukan secara terprogram.
sumber
Cara sederhana, ketika Anda memiliki hanya beberapa bidang satu per satu:
Perlu diatur
android:maxLines="1"
android:imeOptions="actionNext"
android:inputType=""
<- Tetapkan jenis teks Anda, dalam hal lain itu akan menjadi Multiline dan mencegah untuk melanjutkanSampel:
sumber
Coba Gunakan android: imeOptions = "actionNext" tag untuk setiap editText di Lihat itu akan secara otomatis fokus ke edittext berikutnya ketika Anda mengklik Next dari softKeyboard.
sumber
sumber
Jika Anda ingin menggunakan multiline
EditText
denganimeOptions
, coba:sumber
Tambahkan inputType ke edittext dan pada enter itu akan pergi edittext berikutnya
dan masih banyak lagi.
sumber
Di Kotlin saya telah menggunakan Bellow seperti ..
xml:
di kotlin:
sumber
sumber
Jika Anda memiliki elemen dalam tampilan gulir maka Anda juga dapat menyelesaikan masalah ini sebagai:
dan dalam aktivitas Anda:
sumber
Cara sederhana:
Tambahkan ini ke bidang edittext dalam file .xml
sumber