【发布时间】:2014-01-14 14:31:53
【问题描述】:
我已经这样定义了我的SearchView
@Override
public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
super.onCreateOptionsMenu(menu, inflater)
SearchManager searchManager = (SearchManager) getActivity().getSystemService(Context.SEARCH_SERVICE);
SearchableInfo info = searchManager.getSearchableInfo(getActivity().getComponentName());
SearchView searchView = (SearchView) menu.findItem(R.id.action_menu_search).getActionView();
searchView.setInputType(InputType.TYPE_CLASS_TEXT | InputType.TYPE_TEXT_FLAG_NO_SUGGESTIONS);
searchView.setSearchableInfo(info);
}
一切正常。当我提交查询时,新的意图被触发,我在MainActivity 中捕获它。但我不知道搜索查询来自哪里。
我可以在 android.widget.SearchView 中看到可以帮助我的 mAppSearchData 变量,但由于某种原因它无法访问 - 代码 searchView.setAppSearchData(bundle); 无法编译。
还有其他方法可以传递额外的数据来检测搜索的来源吗?
【问题讨论】:
-
我正在使用支持库中的 SearchView:代码“searchView.setAppSearchData(bundle);”编译和工作。
标签: android android-searchmanager android-search