菜单项showAsAction =“never”完全消失了

时间:2014-05-14 12:31:28

标签: android android-actionbar

我有menu.xml

<menu xmlns:android="http://schemas.android.com/apk/res/android" >
    <item
        android:id="@+id/action_settings"
        android:orderInCategory="100"
        android:icon="@drawable/ic_menu_preferences"
        android:showAsAction="ifRoom"
        android:title="@string/action_settings"/>    
     <item
        android:id="@+id/action_connect"
        android:orderInCategory="100"
        android:icon="@drawable/ic_menu_goto"
        android:showAsAction="never"
        android:title="@string/action_connect"/>

     <item
        android:id="@+id/action_upgrade"
        android:orderInCategory="100"
        android:icon="@drawable/ic_menu_refresh"
        android:showAsAction="never"
        android:title="@string/action_upgrade"/>
</menu>

使用此Activity代码:

@Override
public boolean onCreateOptionsMenu(Menu menu) {
    // Inflate the menu; this adds items to the action bar if it is present.
    getMenuInflater().inflate(R.menu.login, menu);
    return super.onCreateOptionsMenu(menu);
}

仅显示action_settings操作按钮。我希望通过“三点”菜单或设备的菜单按钮可以看到其他两个。在LG Optimus L3上,没有出现三点式菜单,设备的菜单按钮也不起作用。在我的Galaxy Nexus上,菜单确实出现了。

我希望将这些其他设置放在单独的菜单中,因为我不希望它们被意外敲击。根据{{​​3}}(强调我的):

  

操作栏可让用户访问与应用当前上下文相关的最重要操作项。

如果我不能把它放在ActionBar菜单中,那么放置那些不那么重要的动作项?

1 个答案:

答案 0 :(得分:0)

这是因为LG有一个硬菜单按钮。当您按设备上的菜单按钮时,您应该看到另外两个项目。

此外,您的设置图标位置不正确:

  

即使操作栏中有空间,也不要让“设置”成为动作   按钮。始终将其保留在操作溢出中并将其标记为“设置”。   将其放在“帮助”以外的所有其他项目下方。

http://developer.android.com/design/patterns/settings.html#flow-structure