Получить событие клавиатуры в Android

У меня есть веб-просмотр, страница с функцией поиска, когда пользователь фокусирует вид, чтобы открыть открытую клавиатуру Android, и я хочу обработать параметры ime.

В клавиатуре Android у меня есть вариант, как кнопка "GO". Я много искал для этого и перепробовал все, кроме моего компьютера за окном, пожалуйста, помогите мне, как я могу это сделать

вот мой код, я не получаю тост или лог-значения.

    @Override
public boolean onKeyUp(int keyCode, KeyEvent event) {
    // TODO Auto-generated method stub

    switch (event.getKeyCode()) {
    case KeyEvent.KEYCODE_D:
        Toast.makeText(key.this, "preseed", Toast.LENGTH_LONG).show();
        Log.e("d", "preseed");
        return true;
    case KeyEvent.KEYCODE_F:
        Log.e("f", "preseed");
        Toast.makeText(key.this, "preseed", Toast.LENGTH_LONG).show();
        return true;
    case KeyEvent.KEYCODE_J:
        Log.e("j", "preseed");
        Toast.makeText(key.this, "preseed", Toast.LENGTH_LONG).show();
        return true;
    case KeyEvent.KEYCODE_K:
        Log.e("k", "preseed");
        Toast.makeText(key.this, "preseed", Toast.LENGTH_LONG).show();
        return true;
    default:
        return super.onKeyUp(keyCode, event);
    }

}

1 ответ

Вы можете добавить onEditorActionListener в ваше представление поиска следующим образом:

  editText.setOnEditorActionListener(new OnEditorActionListener() {

        @Override
        public boolean onEditorAction(final TextView view,
                final int actionId, final KeyEvent event) {

            if (event != null && actionId != 7 && actionId != 5) {
                  //manage press of button 7 and 5


            } else {
                activity.hideKeyboard();
                return false;
            }

            if (actionId == EditorInfo.IME_ACTION_DONE
                    || event.getKeyCode() == KeyEvent.KEYCODE_ENTER) {

                 //manage press of enter button

            }
            return false;
        }

    });

Надеюсь, поможет;)

Другие вопросы по тегам