首页 > 解决方案 > Android SearchView 禁用/隐藏 QuickSearchBox/Suggestion

问题描述

我不知道我做错了什么。
我已经在 stackoverflow 和网络上阅读了一些帖子,我已经阅读了官方文档,但是当我点击它时,我无法弄清楚如何隐藏或防止该框在搜索视图下展开。
查看图像以获得更好的解释。对于实施我有:

可搜索的.xml

<searchable xmlns:android="http://schemas.android.com/apk/res/android"
android:label="@string/app_name"
android:hint="@string/search_hint"
android:includeInGlobalSearch="false"
android:searchSuggestSelection="null"/>

search_menu.xml

<menu xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:android="http://schemas.android.com/apk/res/android">
<item
    android:id="@+id/search"
    android:title="@string/search_title"
    android:icon="@drawable/ic_search"
    app:showAsAction="ifRoom|collapseActionView"
    app:actionViewClass="android.support.v7.widget.SearchView" /></menu>

AndroidManifest.xml

<meta-data
            android:name="android.app.searchable"
            android:resource="@xml/searchable">
        </meta-data>
<intent-filter
    ...
    <action android:name="android.intent.action.SEARCH" />
</intent-filter>

和这样的onCreateOptionsMenu实施

MenuInflater inflater = getMenuInflater();
    inflater.inflate(R.menu.search_menu, menu);
    // Associate searchable configuration with the SearchView
    SearchManager searchManager = (SearchManager) getSystemService(Context.SEARCH_SERVICE);
    final SearchView searchView = (SearchView) menu.findItem(R.id.search).getActionView();
    searchView.setOnQueryTextListener(new SearchView.OnQueryTextListener() {
        @Override
        public boolean onQueryTextSubmit(String query) {
            // perform query here
            query = Uri.encode(query);
            // workaround to avoid issues with some emulators and keyboard devices firing twice if a keyboard enter is used
            // see https://code.google.com/p/android/issues/detail?id=24599
            searchView.clearFocus();

            return true;
        }

        @Override
        public boolean onQueryTextChange(String newText) {
            return true;
        }
    });
    return super.onCreateOptionsMenu(menu);

标签: androidsearchsearchview

解决方案


推荐阅读