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…但谢谢!谢谢,这似乎是使用片段时唯一有效的解决方案。