Вопрос

Я использую простой EditText и зарегистрировать View.OnKeyListener. Анкет Некоторые изменения графического интерфейса должны произойти (исчезание/вне взглядов), когда применяются определенные условия для текста EditView. В эмуляторе это работает, как и ожидалось. На Motorola Droid/Milestone слушатель не работает, только

  1. После нажатия DEL слушатель называется в первый раз, а потом всегда
  2. При активации ввода числа слушатель работает правильно

Примечание. Я деактивировал предложения с помощью type_text_flag_no_suggestions и использовал действие IME IME_Action_go, чтобы иметь обходной путь для этого (в противном случае пользователь не мог «запустить» запрос).

Это было полезно?

Решение

Нашел лучший и работающий способ реализации: Использовать EditText.addTextChangedListener с TextWatcher класс (и реализовать TextWatcher.onTextChanged(CharSequence s, int start, int before, int count)), отлично работает также на рубеже/дроиде.

Другие советы

TextWatcher не может полностью заменить OnKeyListener. Например, если ваш текстовый поток пуст, как бы вы обнаружили, что этот пользователь нажал Del -клавишу? Или что, если у вас вообще нет текстового поля, и вы хотите обнаружить ключевые события?

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top