仅在显示片段时显示导航抽屉菜单项

时间:2015-04-21 08:28:00

标签: android android-fragments

我正在尝试在显示片段时在操作栏中显示一个按钮,并在显示其他片段时隐藏按钮。

我覆盖onCreateOptionsMenu方法:

@Override
    public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
        inflater.inflate(R.menu.main, menu);
        MenuItem item= menu.findItem(R.id.action_example);

         item.setVisible(true);

        super.onCreateOptionsMenu(menu,inflater);
    }

并使用setHasOptionMenu(true)

@Override
        public void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setHasOptionsMenu(true);
        }

我做了一个测试,我注意到最初按钮没有出现在另一个片段中,但是在我打开片段之后我把这个代码放在上面,按钮也显示在另一个片段中。

1 个答案:

答案 0 :(得分:0)

您缺少的是删除片段的onDestroy中的optionsMenu。您描述的行为符合您的代码:创建Fragment时,您还可以创建选项菜单。碎片被销毁时不会自动销毁。