一、在res/menu文件夹下创建Xml文件 跟标签为menu,设置item
<?xml version="1.0" encoding="utf-8"?>
<myapp:menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:myapp="http://schemas.android.com/apk/res-auto"
>
<!--id:按钮Id-->
<!--icon:按钮图标-->
<!--title:按钮文字-->
<!--showAsAction:按钮显示状态--> <item
android:id="@+id/buttonIcon"
android:icon="@drawable/ic_near_me_white"
android:title="导航"
myapp:showAsAction="always"
/> </myapp:menu>
二、在Activity中引用该menu.xml
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.buttons,menu);
return true;
} @Override
public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()) {
case R.id.buttonIcon: Toast.makeText(OrderDetailActivity.this,"hello world",Toast.LENGTH_SHORT).show(); break;
}
return super.onOptionsItemSelected(item);
}
android版本3.0或者更高
- always->一直显示在Action bar;
- ifRoom->如果ActionBar够空间则显示;
- never->不显示在Action Bar中,折叠在Over Flow里;
- withText->菜单项和它的图标,菜单文本一起显示)
android版本2.0或者更高
需要引入命名空间
- 在menu.xml加入自定义命名空间
xmlns:myapp="http://schemas.android.com/apk/res-auto"
- 在ShowAsAction前指定命名空间
myapp:showAsAction="always"