Android中有三种类型的菜单(Menu),一种是选项菜单,即按下手机的menu键在底部弹出来的菜单,一种是上下文菜单,即长按屏幕弹出来的菜单,还有一种是子菜单,子菜单是可以被添加到其他菜单上面的菜单,当我们的菜单有很多的时候,需要将菜单分类,一类就是一个子菜单。
首先介绍下选项菜单的用法
图1
第一步,按下menu键弹出选项菜单,必须重写Activity的onCreateOptionsMenu(Menu menu)方法
public boolean onCreateOptionsMenu(Menu menu) {
}

不管是munu还是submenu的add方法,第二个参数都表示该item的唯一标识,用户按下某一个选项之后,程序就会根据唯一标识做出相应的处理,这里,就必须重写Android的另外一个方法
public boolean onOptionsItemSelected(MenuItem item) {
super.onOptionsItemSelected(item);
switch(item.getItemId()){
case MENU_ONE:。。。
}
return true;
}
比较简单,不再赘述!
上下文菜单的用法与选项菜单的用法类似,这里贴出关键代码
public void onCreateContextMenu(ContextMenu menu, View v,
ContextMenuInfo menuInfo) {
Toast.makeText(MainActivity.this, "创建了上下文菜单", 1).show();
menu.add(0, 1, 0, "新建");
menu.add(0, 2, 0, "打开").setIcon(R.drawable.icon);
super.onCreateContextMenu(menu, v, menuInfo);
}
public boolean onContextItemSelected(MenuItem item) {
switch(item.getItemId()){
case 1:
Toast.makeText(MainActivity.this,"新建", 1).show();
// ...
break;
case 2:
Toast.makeText(MainActivity.this,"打开", 1).show();
// ...
break;
}
return super.onContextItemSelected(item);
}
到此,有关菜单的内容介绍完毕!