Страницы

Поиск по вопросам

суббота, 22 июня 2019 г.

Не работает атрибут “android:imeOptions”

В некотором layout есть EditText и если по документации от Google установить этому виджету атрибут android:imeOptions="actionSearch", то вместо стандартного значка "Enter" на клавиатуре должна появиться иконка поиска (лупа). Но когда я попробовал это реализовать на практике

иконка осталась прежней. Т.е смена иконки не работает. Попробовал реализовать смену иконки программно, написав в Activity : editText.setImeOptions(EditorInfo.IME_ACTION_SEARCH); Это, к сожалению, тоже не сработало. Более того, видимо как следствие этого, не работает и переопределенный метод для обработки нажатия по кнопке поиска:
@Override public boolean onEditorAction(TextView textView, int i, KeyEvent keyEvent) {
Log.d("WHALETAG", "Что то собирается нажаться"); if (i == EditorInfo.IME_ACTION_SEARCH){ Toast.makeText(this, "Поиск: " + editText.getText(), Toast.LENGTH_SHORT).show(); return true; }
return false; }
От чего такое?


Ответ

Решение нашлось довольно нестандартно:
если это происходит, необходимо для EditText указать еще один атрибут android:singleLine="true"
И в результате получится:

и иконка поиска будет исправно отображаться.

Комментариев нет:

Отправить комментарий