选项菜单与Whatsapp相同

时间:2014-04-13 16:47:28

标签: android optionmenu

我希望Action Bar中的Option菜单与Whatsapp和许多其他应用程序相同。

检查图像如下所示:

enter image description here

请帮我搞定。

1 个答案:

答案 0 :(得分:3)

Android文档告诉您如何执行此操作,here

您需要在menu res文件夹中创建一个新的xml。

一个例子:

<menu xmlns:android="http://schemas.android.com/apk/res/android" >
    <item android:id="@+id/action_search"
          android:icon="@drawable/ic_action_search"
          android:title="@string/action_search"/>
    <item android:id="@+id/action_compose"
          android:icon="@drawable/ic_action_compose"
          android:title="@string/action_compose" />
</menu>
  

android:icon :用于指定要使用的图标
   android:title :操作的名称(例如,如果按钮执行搜索,则可能是“搜索”)
   android:id :菜单的ID,您将使用它来了解已点击的菜单

然后在您的活动覆盖onCreateOptionsMenu

中创建它
@Override
public boolean onCreateOptionsMenu(Menu menu) {
    // Inflate the menu items for use in the action bar
    MenuInflater inflater = getMenuInflater();
    inflater.inflate(R.menu.main_activity_actions, menu);
    return super.onCreateOptionsMenu(menu);
}

R.menu.main_activity_actions替换为您的菜单名称。

要在yuor屏幕中应用相同的效果,您应该使用android:showAsAction="never"

<menu xmlns:android="http://schemas.android.com/apk/res/android" >
    <item android:id="@+id/action_search"
          android:icon="@drawable/ic_action_search"
           android:title="@string/action_search" 
           android:showAsAction="never"
    />
    <item android:id="@+id/action_compose"
          android:icon="@drawable/ic_action_compose"
          android:title="@string/action_compose" 
          android:showAsAction="never" />
     </menu>

android:showAsAction=["ifRoom" | "never" | "withText" | "always" | "collapseActionView"]

android:showAsAction用于说明Android应如何显示图标;如果你放ifRoom Android会尝试将其添加为图标(如果有空格);如果您使用“never”,则会将其添加到overflow菜单中。

官方文件:

  

ifRoom 仅将此项目放在操作栏中   它有空间。

     

withText 还包括标题文字(由。定义)   android:title)与动作项目。您可以包含此值   将其中一个作为标志设置,用管道分开   |。

     

永远不要将此项目放在操作栏中。

     

始终始终放置   动作栏中的这个项目。除非它至关重要,否则请避免使用它   该项始终显示在操作栏中。设置多个项目   始终显示为操作项可能导致它们重叠   操作栏中的其他UI。

     

collapseActionView 操作视图   与此操作项关联(由android:actionLayout声明)   或者android:actionViewClass)是可折叠的。

     

在API级别 14 中引入。

如果您在API中使用它&lt; 14它将被忽略。