0
最近我添加了一个搜索片段的工具。某些片段具有ListView,因此当用户键入搜索文本时,ListView会过滤行。 这是用这个tutorial之后的ActionBar完成的。如何仅从ActionBar中搜索几个片段?
我将几个片段的侦听器附加到MainActivity中,因此当用户在屏幕顶部键入文本时,它会筛选片段中的行。但在其他片段中,不需要搜索任何东西,因此应该隐藏放大镜。
然而,一个放大镜绘制在每个屏幕。我也试图在活动没有表现出来,并在片段与此代码只能得出:
@Override
public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
inflater.inflate(R.menu.main_invitro, menu);
menu.clear();
// Associate searchable configuration with the SearchView
SearchView searchView = (SearchView) menu.findItem(R.id.action_search).getActionView();
SearchManager searchManager = (SearchManager) getActivity().getSystemService(Context.SEARCH_SERVICE);
searchView.setSearchableInfo(searchManager.getSearchableInfo(getActivity().getComponentName()));
searchView.clearFocus();
super.onCreateOptionsMenu(menu,inflater);
}
但是放大镜停留在其他碎片,也有可能请在顶部的文本。
是否有正确的方式来显示放大镜只在一些片段?