android 菜单的使用,Android菜单使用详解

Android菜单使用详解

时间:2017-02-09     来源:移动互联网学院

Android中菜单分为两种:选项菜单和上下文菜单。

本文引用地址:http://mi.hqyj.com/Android/566.html

选项菜单

1、创建选项菜单:

public boolean onCreateOptionsMenu(Menu menu){

/*

*/

menu.add(1,1,1,"菜单1");

menu.add(1,2,2,"菜单2");

menu.add(1,3,3,"菜单3");

menu.add(1,4,4,"菜单4");

return true;

}

2、设置菜单关联的图像和Activity:

MenuItem item1=menu.add(1,1,1,"菜单1");

item1.setIcon(R.drawable.ic_launcher);

item1.setIntent(new Intent(this,Main.class));

3、设置菜单的响应事件:

通过实现OnMenuItemClickListener来实现。

4、动态创建Menu:

动态创建Menu的Item的方法即是创建一个Menu类型的参数传进onCreateOptionsMenu方法。

5、创建子菜单:

android中多只支持两级菜单,因此android中多只会有一个子菜单。

// 添加子菜单

SubMenu fileSubMenu = menu.addSubMenu(1, menuItemId++, 5, "文件");

fileSubMenu.setIcon(R.drawable.file);

fileSubMenu.setHeaderIcon(R.drawable.headerfile);

// 子菜单不支持图像

MenuItem newMenuItem = fileSubMenu.add(1, menuItemId++, 1, "新建");

newMenuItem.setCheckable(true);

newMenuItem.setChecked(true);

MenuItem openMenuItem = fileSubMenu.add(2, menuItemId++, 2, "打开");

MenuItem exitMenuItem = fileSubMenu.add(2, menuItemId++, 3, "退出");

exitMenuItem.setChecked(true);

fileSubMenu.setGroupCheckable(2, true, true);

上下文菜单的使用:

上下文菜单可以和任意的View关联,如TextView、EditView等。

下面创建了一个包含4个菜单项的上下文菜单,后一个菜单包括2个子菜单。

public void onCreateContextMenu(ContextMenu menu, View view,

ContextMenuInfo menuInfo)

{

super.onCreateContextMenu(menu, view, menuInfo);

// menu.clear();

menu.setHeaderTitle("上下文菜单");

menu.setHeaderIcon(R.drawable.face);

menu.add(0, menuItemId++, Menu.NONE, "菜单项1").setCheckable(true)

.setChecked(true);

menu.add(20, menuItemId++, Menu.NONE, "菜单项2");

menu.add(20, menuItemId++, Menu.NONE, "菜单项3").setChecked(true);

menu.setGroupCheckable(20, true, true);

SubMenu sub = menu.addSubMenu(0, menuItemId++, Menu.NONE, "子菜单");

sub.add("子菜单项1");

sub.add("子菜单项2");

}

上下文菜单必须注册到指定的View上才能显示

// 注册上下文菜单

registerForContextMenu(button);

registerForContextMenu(editText);

registerForContextMenu(textView);

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值