У меня возникли некоторые проблемы с SearchView в панели контекстного действия, вызываемой фрагментом. Главным является то, что, когда мой SearchView расширяется, она делает исчезают все другие элементы в панели действий (кроме кнопки закрытия), даже если есть какое-то неиспользуемое пространство, как вы можете видеть на скриншоте:Android расширенный SearchView заставляет другие элементы ActionBar исчезать
Кроме того, я также имеющий точно такую же проблему, описанную в этом вопросе: ActionBar always expanded SearchView with the icon inside
Это XML код моего SearchView:
<?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/menu_series_cab_search"
android:icon="@drawable/ic_search"
android:title="@string/action_search"
app:actionViewClass="android.support.v7.widget.SearchView"
app:showAsAction="ifRoom"/>
<item android:id="@+id/action_settings"
android:title="@string/action_settings"
android:orderInCategory="100"
app:showAsAction="never" />
</menu>
И это JAVA код моего фрагмента, который реализует ActionMode.Callback
@Override
public boolean onCreateActionMode(ActionMode mode, Menu menu) {
mode.getMenuInflater().inflate(R.menu.menu_series_cab, menu);
mSearchView = (SearchView) MenuItemCompat
.getActionView(menu.findItem(R.id.menu_series_cab_search));
mSearchView.setQueryHint(getResources().getString(R.string.action_search));
mSearchView.setOnQueryTextListener(new SearchView.OnQueryTextListener() {
@Override
public boolean onQueryTextSubmit(String s) {
mSearchView.clearFocus();
return true;
}
@Override
public boolean onQueryTextChange(String s) {
return false;
}
});
mSearchView.setIconifiedByDefault(false);
return true;
}
@Override
public boolean onPrepareActionMode(ActionMode mode, Menu menu) {
mSearchView.requestFocus();
return true;
}
Привет, Бронкс, благодарю вас за ответ, но он не работает. Я попытался использовать приложение: showAsAction = "always", а также удалив 'android: orderInCategory =" 100 "', но не повезло. – MatteoBelfiori
Привет, Галарон, я обновил свой ответ, элемент поиска пропустил действие «collapseActionView» – Bronx
С вашим обновленным ответом мое другое действие видимо, но не отображается как «меню переполнения» (три точки один над другим) и, что гораздо важнее, мой поиск начинается с именованных и не открывается, даже если я нажму на него. Извините, если я могу появиться как-то noobish, но это было очень долгое время с тех пор, как я последний раз закодирован для Android. – MatteoBelfiori