一、简单菜单的实现
利用menu.add添加菜单项
1 @Override
2 public boolean onCreateOptionsMenu(Menu menu) {
3 menu.add(Menu.NONE,Menu.FIRST,1,"打开");
4 menu.add(Menu.NONE,Menu.FIRST+1,2,"关闭");
5 return super.onCreateOptionsMenu(menu);
6 }
MenuItem add(int var1, int var2, int var3, CharSequence var4) 参数说明:
- 第一个int类型的group ID参数,代表的是组概念,你可以将几个菜单项归为一组,以便更好的以组的方式管理你的菜单按钮。
- 第二个int类型的item ID参数,代表的是项目编号。这个参数非常重要,一个item ID对应一个menu中的选项。在后面使用菜单的时候,就靠这个item ID来判断你使用的是哪个选项。
- 第三个int类型的order ID参数,代表的是菜单项的显示顺序。默认是0,表示菜单的显示顺序就是按照add的显示顺序来显示。
- 第四个String类型的title参数,表示选项中显示的文字。
二、绑定资源文件添加菜单
- 新建资源文件:右击【res】->【New】->【Android resource file】,Resource type选Menu,新建menu资源文件如下:
<?xml version="1.0" encoding="utf-8"?> <menu xmlns:android="http://schemas.android.com/apk/res/android"> <item android:id="@+id/item_add" android:title="Add"/> <item android:id="@+id/item_delete" android:title="Delete"/> </menu>
- 在activity代码中绑定资源文件
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.main,menu);
return super.onCreateOptionsMenu(menu);
}
三、对菜单事件的处理
@Override
public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId())
{
case R.id.item_add:
Toast.makeText(this,"菜单Add被点击.",Toast.LENGTH_SHORT).show();
break;
default:
break;
}
return super.onOptionsItemSelected(item);
}