Android 使用设备api级别14(SherlockActionBar)时未调用OnOptions ItemSelected

Android 使用设备api级别14(SherlockActionBar)时未调用OnOptions ItemSelected,android,actionbarsherlock,android-4.0-ice-cream-sandwich,Android,Actionbarsherlock,Android 4.0 Ice Cream Sandwich,这是SherlockActionBar示例,它使用静态附件,我运行到ICE\u CREAM\u SANDWICH设备,但方法OnOptions ItemSelected未调用 多余的部分代码被删除,3.x和2.x版本尝试了没有问题,请帮助我~~ @Override protected void onCreate(Bundle savedInstanceState) { setTheme(SampleList.THEME); // Used for theme switching in s

这是
SherlockActionBar
示例,它使用静态附件,我运行到
ICE\u CREAM\u SANDWICH
设备,但方法
OnOptions ItemSelected
未调用

多余的部分代码被删除,3.x和2.x版本尝试了没有问题,请帮助我~~

@Override
protected void onCreate(Bundle savedInstanceState) {
    setTheme(SampleList.THEME); // Used for theme switching in samples
    super.onCreate(savedInstanceState);

    mSherlock
            .setUiOptions(ActivityInfo.UIOPTION_SPLIT_ACTION_BAR_WHEN_NARROW);
    mSherlock.setContentView(R.layout.text);

    ((TextView) findViewById(R.id.text))
            .setText(R.string.static_attach_content);
}

@Override
public boolean onCreateOptionsMenu(android.view.Menu menu) {
    return mSherlock.dispatchCreateOptionsMenu(menu);
}

@Override
public boolean onCreateOptionsMenu(Menu menu) {
    // Used to put dark icons on light action bar
    boolean isLight = SampleList.THEME == R.style.Theme_Sherlock_Light;

    menu.add("Save")...

    menu.add("Search")...

    menu.add("Refresh")...

    return true;
}

@Override
public boolean dispatchKeyEvent(KeyEvent event) {
    if (mSherlock.dispatchKeyEvent(event)) {
        return true;
    }
    return super.dispatchKeyEvent(event);
}

@Override
public boolean onOptionsItemSelected(MenuItem item) {
    Log.i("", "on options item selected!!!!!!!!!!!!!!!!");
    Toast.makeText(this, item.toString(), Toast.LENGTH_SHORT).show();
    return true;
}

}

如果您正在使用片段并在片段和活动中调用
onoptionItemSelected
,请记住返回
super.onoptionItemSelected(item)在活动调用中

@Override
public boolean onOptionsItemSelected(MenuItem item) {
    switch (item.getItemId()) {
    // If home icon is clicked return to main Activity
    case android.R.id.home:
        getSupportFragmentManager().popBackStack(null,
                FragmentManager.POP_BACK_STACK_INCLUSIVE);
        return true;
    }

    return super.onOptionsItemSelected(item);
}

如果您正在使用片段并在片段和活动中调用
onoptionItemSelected
,请记住返回
super.onoptionItemSelected(item)在活动调用中

@Override
public boolean onOptionsItemSelected(MenuItem item) {
    switch (item.getItemId()) {
    // If home icon is clicked return to main Activity
    case android.R.id.home:
        getSupportFragmentManager().popBackStack(null,
                FragmentManager.POP_BACK_STACK_INCLUSIVE);
        return true;
    }

    return super.onOptionsItemSelected(item);
}

您是否向菜单按钮添加自定义视图?@TomislavNovoselec此示例没有添加。哦!!我发现!!我忘记了覆盖活动。OnOptions ItemSelected!!!!哈哈哈,您是否在菜单按钮中添加了自定义视图?@TomislavNovoselec此示例没有添加。哦!!我发现!!我忘记了覆盖活动。OnOptions ItemSelected!!!!哈哈哈我找到原因了,我忘了覆盖onOptionsItemSelected,并发送给sherlock…但谢谢!谢谢,这似乎是使用片段时唯一有效的解决方案。我找到了原因,我忘记了覆盖onOptionsItemSelected,并发送给sherlock…但谢谢!谢谢,这似乎是使用片段时唯一有效的解决方案。