У меня есть EditText
, который я опорожняю после того, как в него вписано что-либо (по какой-либо причине). Я делаю это по телефону setText("")
Android EditText Не звоните restartInput
Все работает нормально, если пользователь не находится в состоянии клавиатуры по умолчанию (например, состояние номера). Поскольку setText
вызывает InputMethodManager.restartInput
после нажатия клавиши в состоянии, отличном от состояния по умолчанию, и затем я вызываю setText("")
, restartInput()
вызывается, и клавиатура переключается обратно в состояние по умолчанию (в большинстве случаев состояние «ABC»).
Это очень раздражает, если пользователю нужно ввести несколько номеров или специальные символы и т. Д. Есть ли способ сделать это без вызова restartInput
?
Я уже использую 'TextWatcher' с' afterTextChanged', и я вызываю 'setText (" ")' там. Есть также места вне «TextWatcher», где мне нужно будет вызвать 'setText (" ")', чтобы это не сработало. – Eliezer