Позвольте мне попытаться прояснить ситуацию. Пеп:
1) Если вы пытаетесь достичь EditText
, который допускает только целочисленный (числовой) ввод, выМожно добавить атрибут и все.Вам не нужен пользовательский элемент управления для этого поведения.
android:inputType="number"
2) Причина, по которой вы не получаете никакого ввода в ваш EditText
, заключается просто в том, что вы блокируете его, возвращая true
в переопределенном onKey
метод.
ref говорит, что onKey
должен возвращать:
Истина, если слушатель использовал событие, ложь в противном случае.
Это означает, что если вы возвращаете true
, вы отвечаете, Android не будет ничего вводить в вашем EditText
.Поскольку вы сами этого не делаете (по крайней мере, в предоставленном вами коде), EditText не заполняется.
Итак, я предлагаю вам полностью удалить обработчик и добавить атрибут inputType
в xml
как ты делал раньше
Обновление
Если вам нужно обновить EditText
(назовем его EditText1 ) на основе ввода в другом ( EditText2 ), я предлагаю отслеживать вход в первом с помощью TextWatcher
и установить text
EditText2 с обработанным значением.
Проверить эта похожая проблема для примера кода.