Saya memiliki edittext
di mana saya hanya ingin memasukkan nilai integer. Adakah yang bisa memberitahu saya properti mana yang harus saya gunakan?
android
android-edittext
Sourabh
sumber
sumber
android:inputType="phone"
sebagai gantinya. Tapi sepertinya sedikit lebih "sibuk".Sebagai contoh:
sumber
0123456789.
dan tidak0123456780.
Dalam kode, Anda bisa melakukannya
sumber
Hanya untuk penggunaan input digit
android:inputType="numberPassword"
bersama denganeditText.setTransformationMethod(null);
untuk menghapus menyembunyikan nomor secara otomatis.ATAU
android:inputType="phone"
Untuk input digit saja, saya merasa cara pasangan ini lebih baik daripada
android:inputType="number"
. Batasan menyebutkan "angka" sebagai inputType adalah keyboard memungkinkan untuk beralih ke karakter dan juga memungkinkan karakter khusus lainnya dimasukkan. inputType "numberPassword" tidak memiliki masalah tersebut karena keyboard hanya menampilkan angka. Bahkan inputType "telepon" berfungsi karena keyboard tidak memungkinkan Anda untuk beralih ke karakter. Tetapi Anda masih dapat memasukkan beberapa karakter khusus seperti +, /, N, dll.android: inputType = "numberPassword" dengan editText.setTransformationMethod (null);
inputType = "telepon"
inputType = "number"
sumber
android:inputType="numberPassword"
bersama denganeditText.setTransformationMethod(null);
sumber
sumber
menggunakan di bawah ini dapat memecahkan masalah Anda dengan lebih baik;
dalam xml:
atau // dalam aktivitas di dalam etfield.addtextchangelistener
sumber
Jika ada yang ingin hanya menggunakan angka dari 0 hingga 9 dengan
imeOptions
mengaktifkan maka gunakan baris di bawah ini diEditText
Ini hanya akan memungkinkan angka dan jika Anda mengklik tombol keyboard selesai / berikutnya fokus Anda akan pindah ke bidang berikutnya.
sumber
Anda bisa menggunakannya dalam XML
atau,
atau,
Secara terprogram Anda dapat menggunakan
editText.setInputType (InputType.TYPE_CLASS_NUMBER);
sumber
Saya perlu menangkap menekan Enter pada keyboard dengan TextWatcher . Tapi saya menemukan bahwa semua keyboard numerik android: inputType = "number" atau "numberDecimal" atau "numberPassword" dll tidak mengizinkan saya menangkap Enter saat pengguna menekannya.
Saya mencoba
android:digits="0123456789\n"
dan semua keyboard numerik mulai bekerja dengan Enter dan TextWatcher.Jadi cara saya adalah:
plus
editText.setTransformationMethod(null)
Terima kasih kepada barmaley dan abhiank.
sumber
Saya tidak tahu apa jawaban yang benar di '13, tapi hari ini jawabannya:
myEditText.setKeyListener(DigitsKeyListener.getInstance(null, false, true)); // positive decimal numbers
Anda mendapatkan semuanya, termasuk keyboard di layar adalah keypad numerik.
Hampir semuanya. Espresso, dalam kebijaksanaannya yang tak terbatas, memungkinkan
typeText("...")
memintas filter dan memasukkan sampah ...sumber
yang paling sederhana bagi saya
Meskipun ini juga lebih banyak menyesuaikan
sumber