Android ActionBar菜单:为什么我得到一个箭头而不是3个点?

时间:2015-09-25 13:56:32

标签: android menu android-actionbar

我正试图在我的Android应用程序的右上角有3个点而不是箭头。 我现在所拥有的是这样的:

enter image description here

我希望得到3个点而不是TOP LEFT上的可怕箭头。 我在Android 4.2+设备上试用它,每个设备都向我显示箭头。

我的菜单XML是:

 <?xml version="1.0" encoding="utf-8"?>
 <menu xmlns:android="http://schemas.android.com/apk/res/android"
       xmlns:compat="http://schemas.android.com/apk/res-auto">
<item 
    android:id="@+id/BD_Fav"
    android:title="Favorite"
    android:icon="@drawable/iLikeMenu"
    android:showAsAction="ifRoom" />
<item 
    android:id="@+id/BD_Read"
    android:title="Read"
    android:showAsAction="collapseActionView" />

...

怎么了?是否可以将风格应用于其他地方?我该怎么检查?

编辑:

 <style name="FairActionBar" parent="@android:style/Widget.Holo.Light.ActionBar.Solid.Inverse">
    <item name="android:background">@color/fairNav</item>
    <item name="android:textSize">12dp</item>
</style>

4 个答案:

答案 0 :(得分:1)

<item 
android:id="@+id/BD_Read"
android:title="Read"
android:showAsAction="never" />

我相信你应该使用&#34;从不&#34;如果你想要总是3个点。你也可以使用&#34; ifRoom&#34;当你在喜欢的项目中使用时。

答案 1 :(得分:1)

你应该改变

  

机器人:showAsAction =&#34; collapseActionView&#34;

android:showAsAction="never"

另外,我强烈建议您将样式更改为AppCompat:

<style name="FairActionBar" parent="@android:style/Theme.AppCompat.Light">
  ...

因此您的样式将在所有Android版本上保持一致

答案 2 :(得分:0)

可能的原因:

  1. 您使用的是旧版SDK,Build工具, 解决方案:使用最新的sdk和amp;构建工具

  2. 三点菜单显示在4.4+设备中,在默认菜单为硬件按钮之前,您可以强制查看三点菜单 - 它叫做溢出菜单

答案 3 :(得分:0)

只是chnage ifRoom并且可折叠到永远不会如下

<item 
    android:id="@+id/BD_Fav"
    android:title="Favorite"
    android:icon="@drawable/iLikeMenu"
    android:showAsAction="ifRoom" />

<item 
    android:id="@+id/BD_Read"
    android:title="Read"
    android:showAsAction="collapseActionView" />