【问题标题】:Android: display menu across several activitiesAndroid:跨多个活动显示菜单
【发布时间】:2011-05-31 16:56:43
【问题描述】:

我的应用中有几个活动。我希望我的活动有相同的菜单项,除了一个。我想知道是否有一种简单的方法可以将菜单项放在所有选定的活动中,而不是为每个活动复制和粘贴菜单项?基本上我想与选定的活动分享菜单项。

谢谢,

【问题讨论】:

    标签: android menu menuitem


    【解决方案1】:

    这是 MVC 背后的总体思路 - 能够使用相同的模型(菜单数据)显示不同的视图(活动)。

    如果您动态加载这些菜单 - 使用菜单数据创建一个 Singleton 类并从中获取它。

    如果这些菜单已在 xxx.xml 中定义 - 您必须创建新的 menu.xml(例如)并在那里提取菜单描述。然后将其包含在需要该菜单的所有活动布局中。

    您也可以随时动态扩展该 menu.xml。

    【讨论】:

      【解决方案2】:

      创建一个扩展活动的类(例如 A 类),然后通过扩展此类创建所有其他活动。现在在 A 中保留存储在向量中的常用菜单项,并且可以为任何特定活动添加任何特定菜单操作。这样您就避免了在每个活动中复制和粘贴菜单项的麻烦

      【讨论】:

      • 感谢您的解决方案!它确实有效,但并不是我所有的类都在扩展 Activity,有些是在扩展 ListActivity 并直接依赖于该类,所以我不确定在这种情况下扩展 A 类是否可行。
      • 为什么不使用列表视图而不是列表活动。 listview 将提供 listactivity 提供的一切。只需将 listview 创建为您的活动的成员变量并使用它
      猜你喜欢
      • 2016-06-21
      • 1970-01-01
      • 1970-01-01
      • 2013-02-11
      • 1970-01-01
      • 1970-01-01
      • 2011-10-24
      • 2023-03-25
      • 1970-01-01
      相关资源
      最近更新 更多