У меня есть EditText в моем приложении. Этот editText обновляется с помощью кода каждые 10 секунд с использованием метода editText.setText. Я хочу остановить это обновление, когда пользователь открывает программную клавиатуру. Когда пользователь завершает действие ввода (нажмите кнопку «Готово»), я хочу возобновить обновление из editText.setText. Я пробовал InputMethodManager isActive(View), чтобы проверить, активен ли мой EditText в настоящее время при использовании метода editText.setText. Это отлично работает, когда отображается клавиатура. Но когда пользователь нажимает кнопку «Готово» и программная клавиатура скрывается, isActive (View) по-прежнему дает значение true, и мой editText.setText не вызывается. Ниже приведен мой код, который обновляет editText каждые 10 секунд.
InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);
if(!imm.isActive(editText)){
editText.setText("10.2");
}
Таким образом, этот imm.isActive (editText) возвращает true даже после того, как пользователь нажал кнопку «Готово» на программной клавиатуре. Пожалуйста, предложите любой способ сделать это.