我正在尝试在ActionbarSherlock ver 4.2中“搜索” 。ActionbarSherlock 在最新版本中向后移植了 SerchView。
onCreateOptionsMenu
我有以下代码SherlockListFragment
@Override
public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
// Place an action bar item for searching.
SearchView searchView = new SearchView(getSherlockActivity().getSupportActionBar().getThemedContext());
searchView.setQueryHint("Search Friends");
searchView.setIconified(true);
menu.add(Menu.NONE, Menu.FIRST, Menu.FIRST, "Refresh")
.setIcon(R.drawable.ic_action_refresh)
.setShowAsAction(MenuItem.SHOW_AS_ACTION_ALWAYS);
menu.add(Menu.NONE, Menu.FIRST + 1, Menu.FIRST + 1, "Search")
.setIcon(R.drawable.abs__ic_search)
.setActionView(searchView)
.setShowAsAction(MenuItem.SHOW_AS_ACTION_ALWAYS);
}
和下面的代码
@Override
public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()) {
case Menu.FIRST:
Toast.makeText(getActivity(),"FIRST", Toast.LENGTH_SHORT).show();
break;
case Menu.FIRST + 1:
Toast.makeText(getActivity(),"FIRST+1", Toast.LENGTH_SHORT).show();
break;
}
return super.onOptionsItemSelected(item);
}
当我单击 ABS 中的“刷新”按钮时,我得到了 Toast,但当我单击“搜索”时没有响应,它会展开并转换为 EditText,但不会触发 Toast。
我的问题
如何将Actionbar中的“搜索”与ABS集成?