使用 collapseActionView 搜索视图 | 始终在操作菜单上不起作用

Search View with collapseActionView|always does not work on Action Menu

在具有上下文操作栏的 AppCompat activity 中

正在尝试将 android.support.v7.widget.SearchView 添加到操作模式菜单 searchView 没有展开

using appcompat-v7:25.2.0

菜单资源文件

<?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_search"
        android:icon="@drawable/ic_search_dark_24dp"
        android:title="@string/search_list"
        app:actionViewClass="android.support.v7.widget.SearchView"
        app:showAsAction="always|collapseActionView" />
    <item
        android:id="@+id/item_two"
        android:icon="@drawable/item_two"
        android:title="@string/item_two"
        app:showAsAction="ifRoom"
        >
    </item>
</menu>

Activity 主题

<style name="AppTheme.NoActionBar">
    <item name="windowActionBar">false</item>
    <item name="windowNoTitle">true</item>
    <item name="windowActionModeOverlay">false</item>
    <item name="actionModeBackground">@color/colorPrimaryDark</item>
</style>

Activity代码

private class SelectionActionModeCallBack implements ActionMode.Callback {
        private SearchView mSearchView;

        SelectionActionModeCallBack() {


        }


        @Override
        public boolean onCreateActionMode(ActionMode mode, Menu menu) {
            mode.getMenuInflater().inflate(R.menu.book_selection_action_menu, menu);//Inflate the menu over action mode


            mSearchView =
                    (SearchView) menu.findItem(R.id.action_search).getActionView();


            mSearchView.setOnQueryTextListener(new SearchView.OnQueryTextListener() {
                @Override
                public boolean onQueryTextSubmit(String s) {
                    startSearch(s);
                    return true;
                }

                @Override
                public boolean onQueryTextChange(String s) {
                    return false;
                }
            });
            return true;
        }

        @Override
        public boolean onPrepareActionMode(ActionMode mode, Menu menu) {
            mSearchView.requestFocus();
            return true;
        }

这与文档相矛盾

与在操作栏中使用搜索视图的情况相反,搜索视图具有所需的可折叠效果,同时在操作模式中有其他项目 使用

app:showAsAction="always"

没有 collapseActionView !