Страницы

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

четверг, 9 апреля 2020 г.

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

#android #android_edittext #клавиатура

                    
В некотором 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;
}


От чего такое?
    


Ответы

Ответ 1



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

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

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