У меня есть EditText
, и мне нужно его потерять фокус и заставить клавиатуру исчезнуть, когда пользователь нажимает «Готово» на клавиатуре. Мой код выглядит:Android - EditText не позволит клавиатуре исчезнуть
etFromCustom.setOnEditorActionListener(new OnEditorActionListener() {
@Override
public boolean onEditorAction(TextView v, int actionId, KeyEvent event) {
if (actionId == EditorInfo.IME_ACTION_DONE) {
((LinearLayout) findViewById(R.id.linlay_dummy)).requestFocus(); //this is what I have to do - send focus to a dummy layout
return true;
}
return false;
}
});
Я знаю, что, по умолчанию, «Готово» на клавиатуре скрывает виртуальную клавиатуру, но так как я отменяю его это больше не работает: EditText
действительно теряет фокус, но клавиатура вместо исчезновения просто превращается из числового в qwerty.
Это был уже установлен в файле XML. – whatyouhide
InputMethodManager inputManager = (InputMethodManager) getSystemService (Context.INPUT_METHOD_SERVICE); \t \t inputManager.hideSoftInputFromWindow ( \t \t \t \t getCurrentFocus() getWindowToken(), \t \t \t \t InputMethodManager.HIDE_NOT_ALWAYS.); используйте этот код для исчезновения клавиатуры – MuraliGanesan