Ответ 1
Параметр android:imeOptions="actionSearch"
не позволяет вашему текстовому тексту получать KEYCODE_SEARCH
событие.
Как описано в ссылке на Android:
андроид: imeOptions
Дополнительные функции, которые можно включить в IME, связанных с редактором для улучшения интеграции с вашим приложением. Константы здесь соответствуют тем, которые определены imeOptions.
Если вы хотите получать KEYCODE_SEARCH
, отправленные из ADB, вам необходимо переопределить onKeyDown
в Activity
и вручную вызвать onEditorAction
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
if(keyCode == KeyEvent.KEYCODE_SEARCH){
editText.onEditorAction(EditorInfo.IME_ACTION_SEARCH);
return true;
}else{
return super.onKeyDown(keyCode, event);
}
}
Обратите внимание, что другие приложения не запускают поиск при отправке события KEYCODE_SEARCH
, они просто фокусируются на окне поиска