EditText с мягкой клавиатурой и кнопкой "Назад"
Когда я использую "EditText", у меня есть виртуальная клавиатура.
При первом нажатии кнопки "Назад" клавиатура скрывается. Второе нажатие вызывает в моей активности обратный вызов onBackPressed. Да, но...
Я понятия не имею, как подключить самый первый пресс. Мне нужно обрабатывать входные данные, как только виртуальная клавиатура закрывается.
Любые идеи приветствуются.
Благодарю.
2 ответа
Решение
Вы можете переопределить, когда клавиатура исчезает, используя этот метод:
public boolean onKeyPreIme(int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_BACK &&
event.getAction() == KeyEvent.ACTION_UP) {
// Do your thing here
return false;
}
return super.dispatchKeyEvent(event);
}
Взято из моего другого ответа @: Android: всплывающее окно ошибки на EditText не перемещается, когда клавиатура исчезает
Пользовательская кнопка возврата:-
final RelativeLayout rrBack = (RelativeLayout) mCustomView.findViewById(R.id.rr_back);
rrBack.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
MyApplication.getInstance().getRequestQueue().cancelAll(FEED_DETAIL_TAG_REQUEST);
InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);
imm.hideSoftInputFromWindow(rrBack.getWindowToken(), 0);
}
});