就是我想做一个最简单的带有子菜单的菜单项,在单击“菜单4”时显示三个子菜单,代码如下
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.main, menu);
menu.add("菜单1");
menu.add("菜单2");
menu.add("菜单3");
SubMenu submenu=menu.addSubMenu("菜单4");
submenu.setIcon(R.drawable.ic_launcher);
submenu.add("子菜单1");
submenu.add("子菜单2");
submenu.add("子菜单3");
return true;
}
但是单击菜单4之后没任何反应,想问下是为什么。
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.main, menu);
menu.add("菜单1");
menu.add("菜单2");
menu.add("菜单3");
SubMenu submenu=menu.addSubMenu("菜单4");
submenu.setIcon(R.drawable.ic_launcher);
submenu.add("子菜单1");
submenu.add("子菜单2");
submenu.add("子菜单3");
return true;
}
但是单击菜单4之后没任何反应,想问下是为什么。
public boolean onCreateOptionsMenu(Menu menu) {
try {
menu.add(0, 1, 1, R.string.menu_gengxin);
menu.getItem(0).setIcon(R.drawable.gengxinmenu); menu.add(0, 2, 2, R.string.menu_shezhi);
menu.getItem(1).setIcon(R.drawable.shezhi);
menu.add(0, 3, 3, R.string.menu_tuijian);
menu.getItem(2).setIcon(R.drawable.tuijianmenu);
menu.add(0, 4, 4, R.string.menu_guanyu);
menu.getItem(3).setIcon(R.drawable.guanyu);
SubMenu submenu=menu.addSubMenu("菜单4");
submenu.setIcon(R.drawable.ic_launcher);
submenu.add("子菜单1");
submenu.add("子菜单2");
submenu.add("子菜单3");
} catch (Exception e) { } catch (Throwable e) { } return super.onCreateOptionsMenu(menu);
}这样是可以的
xml<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android">
<group android:id="@+id/grout_main">
<item android:id="@+id/menu_1"
android:title="This 1"/>
<item android:id="@+id/menu_2"
android:title="This 2" />
</group>
</menu>code
public boolean onCreateOptionsMenu(Menu menu) {
try {
MenuInflater inflater = getMenuInflater();
inflater.inflate(R.menu.testmenu, menu);
SubMenu submenu=menu.addSubMenu("菜单4");
submenu.setIcon(R.drawable.ic_launcher);
submenu.add("子菜单1");
submenu.add("子菜单2");
submenu.add("子菜单3");
} catch (Exception e) { } catch (Throwable e) { } return super.onCreateOptionsMenu(menu);
}