任务名称:在活动使用菜单
任务现象:打开程序后,点击菜单按钮会出现2个选项,点击选项时会跳出相对应的提示框
步骤
1、创建一个项目,详细参考:http://8c925c9a.wiz03.com/share/s/2cABOq0BC4HP2LGV_j2dj_pL2PmFkt3XSkVX2GjSRG3a9rRL
2、在res目录下新建一个menu文件夹,右击res目录–》New–》Directory。
然后在文件夹下,新建一个main的菜单文件,右击menu–》New–》Menuresource file
3、在main.xml文件中创建2个菜单项。
<menu xmlns:android="http://schemas.android.com/apk/res/android">
<item
android:id="@+id/add_item"
android:title="Add"/>
<item />/创建具体的某一个菜单项
android:id="@+id/remove_item" />/指定一个唯一的标识符
android:title="Remove"/> //指定一个名称
</menu>
其中
4、在主活动文件中重写onCreateOptionMenu()方法,可用快捷键ctrl+O
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.main,menu); //得到MenuInflater对象,再调用inflate()方法就可以给当前活动创建菜单了
return true; //表示允许创建的菜单显示出来,如果false就无法显示
// return super.onCreateOptionsMenu(menu);
}
inflate()方法:接收2个参数,第一个参数用于指定我们通过哪一个资源文件来创建菜单。第二个参数用于指定我们的菜单项将添加到哪一个menu对象中,这里直接使用onCreateOption()方法中传入的menu参数。
5、定义菜单响应事件。在文件重写onOptionItemSelected()方法
@Override
public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()){ //判断我们点击的是哪一个菜单项
case R.id.add_item: //点击Add
Toast.makeText(this, "You Click Add", Toast.LENGTH_SHORT).show(); //弹出提示框
break;
case R.id.remove_item: //点击remove
Toast.makeText(this,"You Click Remove",Toast.LENGTH_SHORT).show(); //弹出提示框
break;
default:
}
return true;
}