任何一款软件都少不了对“菜单”的使用。在Android下,每一个activity都捆绑了一个Menu,要想定义和使用菜单,都必须在 Activity下进行操作,复写onCreateOptionsMenu 和 onOptionsItemSelected这两个方法。举例如下:

@Override
public boolean onCreateOptionsMenu(Menu menu) {
//调用基类的方法,以便调出系统菜单(如果有的话)
super.onCreateOptionsMenu(menu);
menu.add(0, 1, 0, "重新开始").setIcon(R.drawable.refresh);
menu.add(0, 2, 0, "游戏指南").setIcon(R.drawable.help);
menu.add(0, 3, 0, "关于游戏").setIcon(R.drawable.info);
menu.add(0, 4, 0, "不想玩了").setIcon(R.drawable.exit);
//返回值为”true”,表示菜单可见,即显示菜单
return true;
}

看一看menu.add的方法中的参数:


第一个int类型的group ID参数,代表的是组概念,你可以将几个菜单项归为一组,以便更好的以组的方式管理你的菜单按钮。可以用到的方法有:
removeGroup(id)
setGroupCheckable(id, checkable, exclusive)
setGroupEnabled(id,boolean enabled)
setGroupVisible(id,visible)
个人认为,当你需要在不同场合下显示不同的menu的时候,合理使用这个参数将更为有效的处理菜单的显示。否则一般情况下都归为一组。
第二个int类型的item ID参数,代表的是项目编号。这个参数非常重要,一个item ID对应一个Menu中的选项。在后面使用菜单的时候,就是靠这个item ID来判断,你选中的是哪个选项。
第三个int类型的order ID参数,代表的是菜单项的显示顺序。默认是0,表示菜单的显示顺序就是按照add的顺序来显示。
第四个String类型的title参数,表示选项中显示的文字。
再看看setIcon方法,就是为菜单添加图标显示,使用用资源文件。

设计好了菜单,继续复写onOptionsItemSelected方法,用以对菜单的响应,示例代码:

@Override
public boolean onOptionsItemSelected(MenuItem item)
{
super.onOptionsItemSelected(item);
switch(item.getItemId()){
case 1:
//处理代码
break;
case 2:
//处理代码
break;
case 3:
//处理代码
break;
case 4:
finish();
break;
}
return true;
}

更多相关文章

  1. Android(安卓)Spinner
  2. Android(安卓)EditView用法小结
  3. ListView.setOnItemClickListener 点击无效
  4. Android(安卓)-- android activity 各种布局方式以及相关参数
  5. android ksoap调用天气预报
  6. 短视频app开源源码Android(安卓)如何实现手机震动
  7. android am 启动activity service or broadcast及参数传递
  8. mybatisplus的坑 insert标签insert into select无参数问题的解决
  9. Python技巧匿名函数、回调函数和高阶函数

随机推荐

  1. android的UI和常用控件
  2. Android(安卓)Developers:按钮
  3. Android 链式调用(方法链)
  4. Android动态改变高度以及计算长度的EditT
  5. Android(安卓)Activity之间切换出现短暂
  6. Android 异步处理
  7. Android Activity之间切换出现短暂黑屏的
  8. Android App 获取 root权限
  9. android横竖屏切换(复制未整理)
  10. 【Android(安卓)Training - 03】使用Frag