1

当我膨胀菜单时,一些项目显示在底部栏中,而其他项目显示在 Android 2 的常用选项菜单中。我android:uiOptions="none"在清单中尝试过,但底部栏消失了,选项菜单仍然存在.

我想要做的是在操作栏中添加一个菜单项!

这是菜单布局

<menu xmlns:android="http://schemas.android.com/apk/res/android" >  
<item
    android:id="@+id/menu_support"
    android:icon="@drawable/icon_close" 
    android:showAsAction="always"
    android:title="@string/menu_support"
    android:visible="true"/>    
<item
    android:id="@+id/menu_feedback"
    android:orderInCategory="100"
    android:showAsAction="never"
    android:title="@string/menu_feedback"/>    
<item
    android:id="@+id/menu_settings"
    android:orderInCategory="100"
    android:showAsAction="never"
    android:title="@string/menu_settings"/>
</menu>

这是onCreateMenuOptions

@Override
public boolean onCreateOptionsMenu(Menu menu) {             
    getSupportMenuInflater().inflate(R.menu.activity_main, menu); return true;
}
4

1 回答 1

2

选项菜单始终可见,因为新设计是让设备没有菜单按钮。

我猜你有setDisplayShowHomeEnabled(false)and setDisplayShowTitleEnabled(false)。然后,当您设置android:uiOptions为无时,这将导致您Actionbar消失,但保留选项菜单图标。您需要保留它,就splitActionBarWhenNarrow好像您正在禁用 top一样Actionbar

终于找到你问题的症结所在。您有一项设置为android:showAsAction=always。该选项将始终显示为操作栏上的图标。另外两个设置为从不。它们将始终显示在选项菜单中。

never= 在操作栏上显示为操作图标。

ifRoom= 如果操作栏上有空间,则在操作栏上显示为操作图标,但在没有空间时放入选项菜单。

always= 始终显示在选项菜单中。

| withText= 如果操作栏上有空间,则添加提示以显示操作的标题。

经验法则是只将两个项目设置为始终显示为操作,以免Actionbar在小型设备上变得拥挤。在较大的设备上,您的ifRoom选项将显示为Actionbar项目而不是选项菜单项。

于 2013-05-18T12:13:06.037 回答