在旧版本的 Android(3.0 之前)中使用 ActionBarSherlock 和 Fragments 重复菜单项

Posted

技术标签:

【中文标题】在旧版本的 Android(3.0 之前)中使用 ActionBarSherlock 和 Fragments 重复菜单项【英文标题】:Duplicate menu items with ActionBarSherlock and Fragments in older versions of Android (pre 3.0) 【发布时间】:2012-07-01 03:04:54 【问题描述】:

我将FragmentsActionBarSherlock 与标签一起使用。我的菜单项在旧版本的 android 中表现得非常奇怪。起初菜单正常运行,但是当我更改选项卡(更改片段,虽然它是相同的活动)时,似乎菜单被复制了,因为图标(通常有点透明)变得非常白色,就像他们正在画了好几次。然后他们开始表现得很奇怪,我必须在选择任何东西后等待很长时间才能执行。任何不更改活动或片段的按钮保持选中状态(突出显示)。

由于在较新的操作系统(4.0 +)中不会发生这种情况,我不确定是什么原因造成的。我猜它与标签和片段有关。每当我更改选项卡时,如果它们不为空,我会删除所有片段,并用新片段替换容器。

【问题讨论】:

【参考方案1】:

是的,当您插入另一个片段时,菜单项不会消失。所以也许尝试在onCreateOptionsMenu 中调用menu.clear()

【讨论】:

以上是关于在旧版本的 Android(3.0 之前)中使用 ActionBarSherlock 和 Fragments 重复菜单项的主要内容,如果未能解决你的问题,请参考以下文章

Android向后兼容性

是否可以在 Angular JS 中进行服务器端渲染(在旧版本中,即 2.0 之前的版本)?

API 是不是应该在 API 响应中发回 UI 层文本/数据以允许在旧的 android/ios 应用程序版本中随时更改?

在旧版本中视图是纵向的

Android音视频(六) 使用OpenGL ES 3.0预览Camera

同项目支持3.0及以下版本