关于menu

今天搞memu,发现几个小问题记录下,以便以后查阅

1.   Android.R.** 跟 R.**是不一样的。

      Android.R.**获取的是系统资源  在xml中的定义是:<控件名称 android:id="@android:id/tabhost" />  标红了

     R.** 获取的是自定义的资源,在xml中的定义是: <控件名称 android:id="@+id/textView1" />  标红了

     整的我要死啊。

2.   在override onCreateOptionsMenu方法后,menu是不会出现的要点下menu键才能出现。

View Code
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// 调用父类方法来加入系统菜单
// 虽然目前android还没有系统菜单,但是为了兼容到以后的版本,最好加上
//super.onCreateOptionsMenu(menu);

// 添加菜单项(多种方式)
// 1.直接指定标题
//menu.add("菜单项1");
// 2.通过资源指定标题
//menu.add(R.string.menuitem2);
// 3.显示指定菜单项的组号、ID、排序号、标题
/*menu.add(
0,//组号 不用分组的话就用Menu.NONE
Menu.FIRST, //唯一的ID号
Menu.FIRST, //排序号
"菜单项3"); //标题
*/
// 如果希望显示菜单,请返回true


//!important : android.R开头的资源是系统提供的,我们自己提供的资源是以R开头的
//要点menu才能出来
//menu.add(Menu.NONE,Menu.FIRST+1,1,"删除").setIcon(android.R.drawable.ic_menu_delete);

menu.add(Menu.NONE, Menu.FIRST + 1, 5, "删除").setIcon(

android.R.drawable.ic_menu_delete);

// setIcon()方法为菜单设置图标,这里使用的是系统自带的图标,同学们留意一下,以

// android.R开头的资源是系统提供的,我们自己提供的资源是以R开头的

menu.add(Menu.NONE, Menu.FIRST + 2, 2, "保存").setIcon(

android.R.drawable.ic_menu_edit);

menu.add(Menu.NONE, Menu.FIRST + 3, 6, "帮助").setIcon(

android.R.drawable.ic_menu_help);

menu.add(Menu.NONE, Menu.FIRST + 4, 1, "添加").setIcon(

android.R.drawable.ic_menu_add);

menu.add(Menu.NONE, Menu.FIRST + 5, 4, "详细").setIcon(

android.R.drawable.ic_menu_info_details);

menu.add(Menu.NONE, Menu.FIRST + 6, 3, "发送").setIcon(

android.R.drawable.ic_menu_send);

return true;
}

详细可参见:http://www.cnblogs.com/salam/archive/2011/04/04/2005329.html

原文地址:https://www.cnblogs.com/shenbin/p/2391888.html