0

我需要对 ActivityActionBarFragment.

父 FragmentActivityonCreateOptionMenuonPrepareOptions处理整个应用程序的菜单。

但是,在包含的主Fragment视图中,我希望ActionBar标题为了导航而改变。每一次的Fragment变化。

此外,在一个实例中,我想添加一个在布局中定义的菜单项。我宁愿不重复这部分的代码,我是否必须override使用相同的方法并再次设置整个菜单,包括onOptionSelected?或者...?

编辑:

在我的菜单xml布局上,我有这个项目:

 <item
        android:id="@+id/Add"
        android:title="Add Items"/>

这个项目需要在ActionBar唯一的一个特定的地方看到Fragment。菜单的其余部分与应用程序其余部分应看到的相同。在我需要这个新项目的片段中,我是否还必须再次执行onCreateOptionsMenu, onPrepareOptionsMenu,onOptionsItemSelected并复制其他菜单项?或者我可以overrideFragment弹出一个额外的菜单项吗?

4

2 回答 2

1

1.

getActivity().getActionBar().setTitle();

或者

getActivity.getSupportActionBar().setTitle();
  1. 请进一步澄清:)
于 2013-03-02T21:49:12.157 回答
0

这回答了我第 2 部分所需的内容。

把它放在 onActivityCreated 中:

 setHasOptionsMenu(true);

然后也添加这个:

 @Override
    public void onPrepareOptionsMenu(Menu menu) {
        super.onPrepareOptionsMenu(menu);

        ActivityCompat.invalidateOptionsMenu(getActivity());

        MenuItem Add = menu.findItem(R.id.Add);
        Add.setVisible(true);


    }

父 ActivityR.id.Add默认设置为不可见。

于 2013-03-02T23:45:01.720 回答