三、子菜单(Sub Menu),即菜单下面的菜单(二级或一下的菜单)
1、覆盖Activity的onCreateOptionsMenu(Menu menu)方法,当第一次打开该方法的时候被自动调用
2、调用Menu的addSubMenu()方法添加子菜单
3、用返回的子菜单SubMenu对象调用add()方法添加菜单
//当菜单超过六个以上的就会显示more标记——选项菜单(Option Menu)
//覆盖了Activity的方法,当用户第一次打开菜单时该方法会被自动调用,
@Override
public boolean onCreateOptionsMenu(Menu menu) {
//添加子菜单
SubMenu subMenu = menu.addSubMenu(0, 88, 0, "我有子菜单");
subMenu.add(0, 881, 0, "sub 1");
subMenu.add(0, 882, 0, "sub 2");
menu.add(0, 0, 0, "AlertDialog");
return true;
}
3、当菜单选项(Menuitem)被选择的时候,覆盖Activity的onOptionsItemSeleced()方法来响应事件
//覆盖Activity的方法,当用户点击菜单选项的时候就会调用下面的方法
@Override
public boolean onOptionsItemSelected(MenuItem item) {
System.out.println(item.getItemId());
switch(item.getItemId()){
case 0:
createAtherAlertDialog();
Toast.makeText(getApplicationContext(), "case 1", Toast.LENGTH_SHORT).show();break;
case 88:
Toast.makeText(getApplicationContext(), "case 88", Toast.LENGTH_SHORT).show();break;
case 881:
Toast.makeText(getApplicationContext(), "我是子菜单一", Toast.LENGTH_SHORT).show();break;
case 882:
Toast.makeText(getApplicationContext(), "我是子菜单二", Toast.LENGTH_SHORT).show();break;
}
return true;
}