#java #android #listener #keyboard-events
#java #Android #прослушиватель #клавиатура-события
Вопрос:
Я работаю над проектом для выполнения вычислений. Итак, у меня работает EditText
окно, и я хочу скрыть, softkeyboard
если пользователь нажимает ГОТОВО (или любую другую кнопку, ПЕРЕЙТИ, ДАЛЕЕ и т.д.), А поле EditText пусто
Вот так:
EditText пуст -> пользователь нажимает кнопку -> softkeyboard скрывает
У меня есть этот фрагмент кода, который мне удается написать с помощью руководств по Интернету
Я знаю, что это для управления прослушивателем кнопки в softkeyboard
TextView.OnEditorActionListener mEditor = new TextView.OnEditorActionListener()
{
@Override
public boolean onEditorAction(TextView v, int actionId, KeyEvent event)
{
if (actionId == EditorInfo.IME_ACTION_DONE)
{
//Calculations method
}
return false;
}
};
Итак, мой вопрос: как я могу управлять прослушивателем, когда EditText
он пуст, и не получать ошибок?
Ответ №1:
вы можете использовать, например:
TextView.OnEditorActionListener mEditor = new TextView.OnEditorActionListener()
{
@Override
public boolean onEditorAction(TextView v, int actionId, KeyEvent event)
{
if (actionId == EditorInfo.IME_ACTION_DONE)
{
if (!TextUtils.isEmpty(v.getText().toString())){
// you calculations method
} else {
InputMethodManager imm = (InputMethodManager) getActivity().getSystemService(
Context.INPUT_METHOD_SERVICE);
imm.hideSoftInputFromWindow(v.getApplicationWindowToken(),
InputMethodManager.HIDE_NOT_ALWAYS);
}
}
return false;
}
};