Android学习(6)-Android用户界面之菜单

来源:互联网 发布:狼途机械手g402宏编程 编辑:程序博客网 时间:2024/05/17 01:31

Android系统为我们提供了丰富的可视化用户界面组件,包括菜单、对话框、按钮、下拉列表等。Android系统中所有UI类都是建立在View和ViewGroup这两个类的基础上。所有View的子类是Widget,所有ViewGroup的子类是Layout。

 

一、菜单

菜单分为三类:选项菜单、上下文菜单和子菜单。

1、选项菜单

在前面我们学习过如何用菜单资源文件创建选项菜单,这里我们一起学习如何在代码中创建选项菜单。

创建菜单步骤:

1)重写Activity的onCreateOptionMenu(Menu menu)方法

2)调用Menu的add()方法添加菜单项(MenuItem)

3)重写Activity的onOptionsItemSelected()方法来响应菜点击事件

 

程序中需要定义选项的ITEM1=Menu.FIRST,为什么用FIRST作为Id?使用程序固有的常量不容易出错,而且不会占用内存。

使用add()方法:menu.add(0,ITEM1,0,"开始");。

menu.add方法的参数:
       第一个int类型的group ID参数,代表的是组概念,你可以将几个菜单项归为一组,以便更好的以组的方式管理你的菜单按钮。
       第二个int类型的item ID参数,代表的是项目编号。这个参数非常重要,一个item ID对应一个menu中的选项。在后面使用菜单的时候,就靠这个item ID来判断你使用的是哪个选项。
       第三个int类型的order ID参数,代表的是菜单项的显示顺序。默认是0,表示菜单的显示顺序就是按照add的显示顺序来显示。
       第四个String类型的title参数,表示选项中显示的文字。

 

2、上下文菜单

用户长时间按键不放时,弹出的菜单称为上下文菜单。

创建上下文菜单步骤:

1)重写Activity的onCreateContextMenu(Menu menu)方法,调用Menu的add()方法添加菜单

2)重写Activity的onContextMenuSelected()方法,响应菜单点击事件

3)调用registerForContextMenu()方法,为视图注册上下文菜单

 

3、子菜单

创建子菜单步骤:

1)重写Activity的onCreateOptionMenu(Menu menu)方法,调用Menu的addSubMenu()方法添加子菜单项(SubMenu)

2)调用SubMenu的add()方法,添加子菜单

3)重写Activity的onOptionMenuSelected()方法,响应菜单点击事件

addSubMenu()方法有多个重载,如不需要响应事件的菜单可以使用只有title参数的重载方法。

 

 

原创粉丝点击