6

我有 2 个活动的应用程序 - 2 个具有不同数据的不同列表视图,我希望在两者中都通过操作栏进行搜索。此外,两者都应包含建议支持。

到目前为止,我似乎只能拥有一个始终绑定到一个活动的 searchable.xml:

<searchable xmlns:android="http://schemas.android.com/apk/res/android"
    android:label="@string/app_name"
    android:hint="@string/search_hint"
    android:searchSuggestAuthority="XXXSuggestionsContentProvider"
    android:searchSuggestIntentAction="android.intent.action.VIEW">
</searchable>

有没有办法可以有多个可搜索的?

谢谢。

4

1 回答 1

0

你可以试试这个,非常适合我。

在活动中像这样膨胀菜单。

@Override
public boolean onCreateOptionsMenu(Menu menu) {
    getMenuInflater().inflate(R.menu.menu_main, menu);
    MenuItem searchItem = menu.findItem(R.id.action_search);
    SearchView searchView = (SearchView) MenuItemCompat.getActionView(searchItem);
    searchView.setOnQueryTextListener(new SearchView.OnQueryTextListener() {
        @Override
        public boolean onQueryTextSubmit(String text) {
            //REFRESH ADAPTER WITH NEW FILTERED LIST HERE
            return false;
        }

        @Override
        public boolean onQueryTextChange(String text) {
            //REFRESH ADAPTER WITH NEW FILTERED LIST HERE
            return false;
        }
    });
    return true;
}

菜单应该看起来像这样才能工作:

<menu
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:grupete="http://schemas.android.com/apk/res-auto" >

    <item
        android:id="@+id/action_search"
        android:icon="@android:drawable/ic_menu_search"
        grupete:actionViewClass="android.support.v7.widget.SearchView"
        android:orderInCategory="100"
        android:title="@string/search"
        grupete:showAsAction="ifRoom"/>

</menu>

希望我能帮助你!

此致,

佩德罗维奇90

于 2015-09-28T21:06:49.480 回答