我正在研究Sherlock ActionBar并使用右上角的选项按钮,靠近搜索图标。我成功地为 SEARCH 按钮生成了 onClick 事件,但我在选项按钮的 onClick 事件中遇到了问题。使用以下代码添加按钮:
public boolean onCreateOptionsMenu(com.actionbarsherlock.view.Menu menu) {
        menu.add(0, 1, 1, "Search").setIcon(R.drawable.search_icon).setActionView(R.layout.action_search).setShowAsAction(MenuItem.SHOW_AS_ACTION_IF_ROOM | MenuItem.SHOW_AS_ACTION_COLLAPSE_ACTION_VIEW);
        menu.add(0, 2, 2, "Button").setIcon(R.drawable.menu_overflow_icon).setActionView(R.layout.action_button).setShowAsAction(MenuItem.SHOW_AS_ACTION_ALWAYS);
return super.onCreateOptionsMenu(menu);
    }
对于点击事件:
@Override
    public boolean onOptionsItemSelected(com.actionbarsherlock.view.MenuItem item) {
        switch (item.getItemId()) {
        case 1:
            search = (EditText) item.getActionView();
            search.addTextChangedListener(filterTextWatcher);
            search.requestFocus();
            InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);
            imm.toggleSoftInput(InputMethodManager.SHOW_FORCED, 0);
    break;
        case 2:
            Toast.makeText(ActivityScreen.this, "hit it", Toast.LENGTH_SHORT).show();
        }
        return super.onOptionsItemSelected(item);   
    }       
我在下面的图片中显示了我的要求。
