Android 在操作栏中隐藏菜单选项
我有一个活动有3个片段(不是标签)。我有几个动作条项目,我想隐藏它们时,某个片段是存在的。我该怎么办 我对你的帖子的理解是:Android 在操作栏中隐藏菜单选项,android,android-actionbar,Android,Android Actionbar,我有一个活动有3个片段(不是标签)。我有几个动作条项目,我想隐藏它们时,某个片段是存在的。我该怎么办 我对你的帖子的理解是: @Override public void onPrepareOptionsMenu(Menu menu) { super.onPrepareOptionsMenu(menu); MenuItem item3 = menu.findItem(R.id.ID OF MENU); item3.setVisible(false); } 你有3个碎片
@Override
public void onPrepareOptionsMenu(Menu menu) {
super.onPrepareOptionsMenu(menu);
MenuItem item3 = menu.findItem(R.id.ID OF MENU);
item3.setVisible(false);
}
我的首选方法::
您还可以找到不想在当前片段中显示的菜单项,并设置它们的可见性
MenuItem item = menu.findItem(<id>);
item.setVisible(<true/false>);
您还可以使用不同的方法来处理此问题
如果要隐藏所有菜单项,只需执行以下操作:
@Override
public void onAttach(final Activity activity) {
super.onAttach(activity);
setHasOptionsMenu(true);
}
@Override
public void onPrepareOptionsMenu(final Menu menu) {
super.onPrepareOptionsMenu(menu);
menu.clear();//This removes all menu items (no need to know the id of each of them)
}
显示/隐藏操作栏项;有用的博文:检查片段是否对用户可见:两个问题:1.)您是指活动中的方法还是片段?2.)这适用于一些项目,但如果我有许多项目,我必须将它们设置为false,然后在需要时使它们再次可见。@androidenthusist我在片段中引用它,然后创建菜单项组并切换组的可见性。+1用于此!实际上,只需输入
返回false
作为onPrepareOptions菜单()中的唯一语句,
也会删除整个菜单。@11111 61171159459134在“void”函数中如何返回false?@zdd我不知道如何;事实上,返回false代码>会删除整个菜单!你试过了吗?@1111161171159459134,我们有一些差距,这个函数在活动中返回boolean,但在片段中返回void,这就是区别。
@Override
public void onAttach(final Activity activity) {
super.onAttach(activity);
setHasOptionsMenu(true);
}
@Override
public void onPrepareOptionsMenu(final Menu menu) {
super.onPrepareOptionsMenu(menu);
menu.clear();//This removes all menu items (no need to know the id of each of them)
}