在onCreate之后如何向ActionBarSherlock添加项目?

时间:2012-06-23 04:05:58

标签: java android android-actionbar actionbarsherlock

好的,当我的应用程序启动时,它有两个选项卡,操作栏中有一个操作,当我切换到第二个选项卡时,我更改了布局,我想删除我在栏中的操作,并添加一个不同的,任何简单的方法来实现这一目标?

2 个答案:

答案 0 :(得分: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();

答案 1 :(得分:2)

我假设您的标签在FragmentsFragmentActivity。在这种情况下,您应该在标签片段中setHasOptionsMenu(true)' onCreate()方法。并覆盖片段的onCreateOptionsMenuonOptionsItemSelected

其余部分将为您完成(例如在切换标签后使actionItems无效等)