好的,当我的应用程序启动时,它有两个选项卡,操作栏中有一个操作,当我切换到第二个选项卡时,我更改了布局,我想删除我在栏中的操作,并添加一个不同的操作,有什么简单的方法可以做到这一点?
问问题
2644 次
2 回答
4
我让它工作了!
您所要做的就是在 onCreateOptionsMenu 中添加条件语句,然后在切换选项卡时简单地使菜单无效!希望这对某人有帮助!
有条件的:
public boolean onCreateOptionsMenu(Menu menu) {
if (getSupportActionBar().getSelectedNavigationIndex() == 1) {
menu.add("Share")
.setIcon(android.R.drawable.ic_menu_share)
.setShowAsAction(MenuItem.SHOW_AS_ACTION_IF_ROOM | MenuItem.SHOW_AS_ACTION_WITH_TEXT);
}
if (getSupportActionBar().getSelectedNavigationIndex() == 0)) {
menu.add("Settings")
.setIcon(android.R.drawable.ic_menu_manage)
.setShowAsAction(MenuItem.SHOW_AS_ACTION_IF_ROOM | MenuItem.SHOW_AS_ACTION_WITH_TEXT);
}
return true;
}
并使无效:
invalidateOptionsMenu();
于 2012-06-23T05:42:06.957 回答
2
我认为您的标签Fragments
在FragmentActivity
. 在这种情况下,您应该setHasOptionsMenu(true)
在选项卡片段的onCreate()
方法中。并覆盖onCreateOptionsMenu
和onOptionsItemSelected
片段。
其余的将为您完成(例如在切换选项卡后使 actionItems 无效等)
于 2012-08-27T22:21:54.647 回答