我想知道如何做到这一点:当用户按下硬件搜索按钮时,它会在操作栏中打开一个搜索视图。
基本上我有一个活动托管片段。一个片段添加到 ActionbarSherlock 一个搜索视图,它工作正常:
@Override
public void onCreateOptionsMenu(com.actionbarsherlock.view.Menu menu,
MenuInflater inflater) {
if(searchView==null)
searchView = new SearchView(getSherlockActivity().getSupportActionBar().getThemedContext());
searchView.setQueryHint(getString(R.string.search));
searchView.setOnQueryTextListener(this);
menu.add(Menu.NONE, R.string.search, Menu.NONE, R.string.search)
.setIcon(R.drawable.abs__ic_search_api_holo_light)
.setActionView(searchView)
.setShowAsAction(MenuItem.SHOW_AS_ACTION_IF_ROOM | MenuItem.SHOW_AS_ACTION_COLLAPSE_ACTION_VIEW);
super.onCreateOptionsMenu(menu, inflater);
}
我想我也可以在 FragmentActivity 中捕获硬件密钥
@Override
public boolean onSearchRequested() {
//DO SOMETHING
return super.onSearchRequested();
}
但是当按下硬件搜索按钮时,我看不到如何打开搜索视图。
有什么提示吗?
谢谢 :)。