gpt4 book ai didi

android-fragments - 如何将多个菜单扩展到选项栏中?

转载 作者:行者123 更新时间:2023-12-01 06:32:13 25 4
gpt4 key购买 nike

(首先,我通过 HoloEverywhere 使用 ActionbarSherlock,虽然我不知道这与问题有关。)

我有一个包含三个片段的事件。每个片段都有自己的菜单项,它们都共享一些菜单项。我已经从 StackOverflow 了解到不允许在 Activity 中添加菜单项,然后在 Fragment 中添加更多项。 (我试过......它会导致奇怪的错误)。所以Activity没有菜单,但每个片段都有。但是,我仍然试图避免在每个片段的菜单 xml 中复制菜单条目。为此,我为每个片段设置了一个 xml 菜单,以及它们共享的一个 xml 菜单。例如,我有:

fragment_1_menu.xml
fragment_2_menu.xml
all_fragments_menu.xml

并且,在 Fragment1我正在尝试同时导入 fragment_1_menu.xmlall_fragments_menu.xml :
public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
inflater.inflate(R.menu.all_fragments_menu, menu);
inflater.inflate(R.menu.fragment_1_menu, menu);
super.onCreateOptionsMenu(menu, inflater);
}

当我这样做时,它几乎可以工作,但是,在我的情况下,来自 all_fragments_menu 的菜单项之一。不见了。我的意思不是说它是菜单中的一个空白……我的意思是它根本没有出现在菜单中。 XML ID 是唯一的并映射到 R.java 中的不同 int。看起来它应该工作。我对 Fragment2 做同样的事情除了 fragment_2_menu.xml没有项目,在这种情况下,所有菜单项都按预期显示。

这应该工作吗?我只是错过了什么吗?

最佳答案

我想我已经弄清楚了。我犯了一些错误并误解了原因。我需要:

  • 更改菜单 showAsAction XML 中“总是”的术语(叹气)。
  • onCreateOptionsMenu() 的开头调用 menu.clear() .
  • 做“其他事情”,因为虽然这可以在视觉上修复菜单,但按钮无法正确报告按下情况。菜单工作正常,直到我旋转设备,此时按钮停止工作(尽管它们看起来正确)。但我认为这可能与我报告的问题无关。
  • 关于android-fragments - 如何将多个菜单扩展到选项栏中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19059914/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com