У меня есть, edittext
в котором я хочу, чтобы были вставлены только целочисленные значения. Может кто-нибудь сказать мне, какое свойство я должен использовать?
android
android-edittext
Sourabh
источник
источник
android:inputType="phone"
вместо этого. Но это кажется немного более "занятым".Например:
источник
0123456789.
а не0123456780.
В коде вы могли бы сделать
источник
Для ввода только цифр используйте
android:inputType="numberPassword"
вместе с,editText.setTransformationMethod(null);
чтобы удалить автоматическое скрытие номера.ИЛИ
android:inputType="phone"
Я чувствую, что эти два способа лучше, чем ввод только цифр
android:inputType="number"
. Ограничение упоминания «числа» в качестве inputType состоит в том, что клавиатура позволяет переключаться на символы, а также позволяет вводить другие специальные символы. У inputType «numberPassword» таких проблем нет, так как клавиатура показывает только цифры. Даже «телефонный» тип ввода работает, так как клавиатура не позволяет переключаться на символы. Но вы все равно можете ввести пару специальных символов, таких как +, /, N и т. Д.android: inputType = "numberPassword" с editText.setTransformationMethod (null);
inputType = "телефон"
inputType = "число"
источник
android:inputType="numberPassword"
вместе сeditText.setTransformationMethod(null);
источник
источник
Использование ниже может решить вашу проблему лучше;
в XML:
или // в действии внутри etfield.addtextchangelistener
источник
Если кто-то хочет использовать только число от 0 до 9 с
imeOptions
включенной функцией, используйте ниже строку в вашемEditText
Это позволит только номер, и если вы нажмете кнопку «Готово / следующее» на клавиатуре, ваш фокус переместится в следующее поле.
источник
Вы можете использовать его в XML
или,
или,
Программно вы можете использовать
editText.setInputType (InputType.TYPE_CLASS_NUMBER);
источник
Мне нужно отловить нажатие Enter на клавиатуре с TextWatcher . Но я обнаружил, что все цифровые клавиатуры android: inputType = "number" или "numberDecimal" или "numberPassword" и т. Д. Не позволяют мне перехватывать Enter, когда пользователь нажимает его.
Я попробовал,
android:digits="0123456789\n"
и все цифровые клавиатуры начали работать с Enter и TextWatcher.Итак, мой путь:
плюс
editText.setTransformationMethod(null)
Спасибо бармалей и абхианков.
источник
Я не знаю, какой правильный ответ был в 13 году, но сегодня это:
myEditText.setKeyListener(DigitsKeyListener.getInstance(null, false, true)); // positive decimal numbers
Вы получаете все, включая экранную клавиатуру и цифровую клавиатуру.
Почти все. Эспрессо в своей бесконечной мудрости позволяет
typeText("...")
необъяснимым образом обойти фильтр и попасть в мусор ...источник
самый простой для меня
хотя это тоже больше подгоняет
источник