<menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:compat="http://schemas.android.com/apk/res-auto" >
<item android:id="@+id/action_chat"
android:icon="@drawable/ico_enter_chat"
android:title="Enter Chat"
compat:showAsAction="always|withText" />
<item android:id="@+id/action_map"
android:icon="@drawable/ico_map"
android:title="Users Map"
compat:showAsAction="always" />
<item android:id="@+id/action_logout"
android:icon="@drawable/ico_log_out"
android:title="Log Out"
compat:showAsAction="always" />
</menu>
这是我的菜单XML文件,理论上它应该显示两个图标作为单个图标和第一个带标题的图标。
但是,在应用程序中它不显示标题,这里是screencap:
那为什么不显示“标题”?
答案 0 :(得分:3)
Android系统认为没有足够的空间来完全显示菜单项的标题,因此它隐藏了标题(虽然可能有足够的空间,但Android并不这么认为。)如果你变成了风景或者在平板电脑上运行应用程序,标题会显示出来。
这声明当操作栏中的空间可用时,搜索操作应显示为操作按钮,但“设置”操作应始终显示在溢出中。 (默认情况下,所有操作都出现在溢出中,但最好明确声明每个操作的设计意图。)
https://developer.android.com/training/basics/actionbar/adding-buttons.html
答案 1 :(得分:3)
来源: http://developer.android.com/guide/topics/ui/actionbar.html#ActionItems
如果您的菜单项同时提供标题和图标 - 标题和图标属性 - 则操作项默认仅显示图标。
如果要显示文字标题,请添加&#34; withText&#34; showAsAction属性。
注意: &#34; withText&#34; value是文本标题应显示的操作栏的提示。 操作栏会尽可能显示标题,但如果图标可用且操作栏受空间限制,则可能不显示。
答案 2 :(得分:0)
这对我有用
app:showAsAction="ifRoom|withText"
答案 3 :(得分:0)
appcompat_v7&gt;值&gt; config.xml中
<bool name="abc_config_allowActionMenuItemTextWithIcon">false</bool>
变化
<bool name="abc_config_allowActionMenuItemTextWithIcon">true</bool>