1、ActivityTest/res/menu 下创建Android XML File,名称为main。在main.xml中新增如下代码:
<item android:id="@+id/remove_item" android:title="Remove"></item>
<item android:id="@+id/add_item" android:title="Add"></item>
表示添加两个菜单,分别是Add 和 Remove
2、打开FristActivity.java,重写 onCreateOptionsMenu():
public boolean onCreateOptionsMenu(Menu menu){
getMenuInflater().inflate(R.menu.main, menu);
return true;
}
通过getMenuInflater()方法得到MenuInflater对象,再调用它的inflate()方法就可以给当前活动创建菜单了。Inflate()传入两个参数,第一个参数用于指定我们通过哪个资源文件来创建菜单,这里要传入R.menu.main;第二个参数用于指定我们的菜单项将添加到哪一个menu对象中。当然,仅仅让菜单显示出来是没有用的,我们需要将菜单真正可用才行,因为我们要定义菜单的响应事件,重写 onOptionsItemSelected(),套用Toast代码如下:
public boolean onOptionsItemSelected(MenuItem item){
switch (item.getItemId()){
case R.id.add_item:
Toast.makeText(FristActivity.this, "You clicked add_item", Toast.LENGTH_SHORT).show();
break;
case R.id.remove_item:
Toast.makeText(FristActivity.this, "You clicked remove_item", Toast.LENGTH_SHORT).show();
break;
default:
}
return true;
}
在onOptionsItemSelected()方法中,通过调用item.getItemId()来判断当前点击的是哪一个菜单项,然后在每个菜单项加入我们要写的逻辑。如该例子中的显示toast。