【问题标题】:Overflow Actionbar items not displaying on bottom bar底部栏上未显示溢出操作栏项目
【发布时间】:2012-12-14 06:42:54
【问题描述】:

我正在尝试将项目添加到 android 的底部操作栏。根据我在 Google dev 上阅读的要求,我已将以下内容放入我的清单中。

        android:uiOptions="splitActionBarWhenNarrow"

我有一个布局文件如下:

<item
    android:id="@+id/menu_settings"
    android:orderInCategory="100"
    android:showAsAction="ifRoom"
    android:title="@string/menu_settings"
    android:visible="true"/>

<item
    android:id="@+id/activityhomemen"
    android:orderInCategory="100"
    android:showAsAction="always"
    android:title="@string/activityhomemen"
    android:visible="true"/>

<item
    android:id="@+id/activity1men"
    android:orderInCategory="100"
    android:showAsAction="always"
    android:title="@string/activity1men"
    android:visible="true"/>
<item
    android:id="@+id/activity2men"
    android:orderInCategory="100"
    android:showAsAction="always"
    android:title="@string/activity2men"
    android:visible="true"/>

<item
    android:id="@+id/activity3men"
    android:orderInCategory="100"
    android:showAsAction="always"
    android:title="@string/activity3men"
    android:visible="true"/>

<item
    android:id="@+id/activity4men"
    android:orderInCategory="100"
    android:showAsAction="always"
    android:title="@string/activity4men"
    android:visible="true"/>

<item
    android:id="@+id/activity5men"
    android:orderInCategory="100"
    android:showAsAction="always"
    android:title="@string/activity5men"
    android:visible="true"/>

<item
    android:id="@+id/activity9men"
    android:orderInCategory="100"
    android:showAsAction="ifRoom"
    android:title="@string/activity5men"
    android:visible="true"/>

<item
    android:id="@+id/activity6men"
    android:orderInCategory="100"
    android:showAsAction="ifRoom"
    android:title="@string/activity5men"
    android:visible="true"/>

<item
    android:id="@+id/activity7men"
    android:orderInCategory="100"
    android:showAsAction="ifRoom"
    android:title="@string/activity5men"
    android:visible="true"/>

<item
    android:id="@+id/activity8men"
    android:orderInCategory="100"
    android:showAsAction="ifRoom"
    android:title="@string/activity5men"
    android:visible="true"/>

<item
    android:id="@+id/activity9men"
    android:orderInCategory="100"
    android:showAsAction="ifRoom"
    android:title="@string/activity5men"
    android:visible="true"/>

当我在模拟器上运行应用程序时,我可以看到菜单的前 5 项。当我单击溢出按钮时,我会看到剩余的项目。由于我在清单中插入的内容,它们是否应该不会出现在底部栏上?...

非常感谢任何帮助。

下面是模拟器的画面。如您所见,溢出包含项目并且底部没有显示栏...

【问题讨论】:

  • 仅在狭窄的场景中(例如,手机或手机大小的模拟器,纵向)。您可以考虑发布您所看到的屏幕截图。
  • 你在使用 actioBarSherlock 吗?
  • 我正在使用模拟器来复制nexus 7。它绝对不属于手机或手机大小的类别,但我真的需要在底部显示这个栏,因为设计将具有特色每个屏幕底部有 4 个按钮。我在 Google dev 上读到操作栏是要走的路。
  • @Greensy 不,我使用的是标准的 ActionBar,我的 API 级别是 17,所以是最新的并且高于最低 API14
  • 在 Nexus 7 等“非窄”设备上不会显示拆分操作栏。请参阅:stackoverflow.com/questions/13606778/…

标签: android layout menu android-actionbar


【解决方案1】:

如果您想始终在底部显示这些项目。除了操作栏之外,您还可以使用选项卡小部件。它看起来像 4.0+ 上的操作栏。

http://developer.android.com/reference/android/widget/TabWidget.html

更新:

http://developer.android.com/reference/android/support/v13/app/FragmentTabHost.html - 这是这个类,有助于添加片段导航

【讨论】:

  • 我会尝试一下,唯一的事情是这意味着更多的工作,因为我需要一遍又一遍地将此小部件添加到需要它的每个布局中,这就是所有这些,我不明白为什么谷歌让显示底栏这样的事情变得如此困难!
  • 您不需要一遍又一遍地添加它。只需使用 Fragments api。和 FragmentTabWidget 类/它真的很简单。另外,我强烈建议您使用 ise actionBarSherlock - 这是一个非常好的扩展,对操作栏的行为有很大帮助。