Я обновляю приложение, чтобы использовать новый Toolbar
вместо обычного ActionBar
.
В моем приложении пользователь должен иметь возможность выбрать контакт из своего списка контактов. Для этого я добавил в меню SearchView
.
Контакты уже находятся в списке; SearchView
используется для фильтрации списка с помощью метода ArrayAdapter.getFilter()
.
Все работало отлично, используя ActionBar
, но высота Toolbar
растягивается сразу за клавиатурой. Используя проверку XML с Android Device Monitor, я вижу, что ListView
существует за моей клавиатурой.
Кажется, что SearchView
хочет отображать предложения, но у меня нет такой настройки. Любая идея, что пойдет не так?
Изображения иллюстрируют проблему. Они показывают нормальное, расширенное и сфокусированное состояние SearchView
.
Это мое меню XML:
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto">
<item android:id="@+id/action_forwarding_contact_search"
app:showAsAction="always"
android:title="@string/forwarding_contact_search"
app:actionViewClass="android.support.v7.widget.SearchView"
android:icon="@drawable/abc_ic_search_api_mtrl_alpha"/>
</menu>
Edit
Предоставление панели инструментов фиксированной высоты не решает проблему, так как она будет SearchView
исчезать при фокусировке. Изменение силы тяжести любого элемента, похоже, не влияет на SearchView
.