`
wangminshe89
  • 浏览: 669860 次
文章分类
社区版块
存档分类
最新评论

Android中的Menu(菜单)的三种类型菜单的学习

 
阅读更多

今天学习一下菜单组件,在Android中的菜单中有三种①:OptionMenu(选项菜单)②:ContextMenu(上下文菜单) ③:SubMenu(子菜单)

下面分别来学一下

一:OptionMenu(选项菜单) 当我们使用手机的时候,按着手机上面的Menu,弹出的菜单就是选项菜单。但是我们一次性能显示菜单选项只能是6个

如果我们设置的超过6个时候,第六个菜单选项会自动设置成更多,然后我们点击更多的时候,剩下来的选项菜单就会选项.。先看下选项菜单的测试截图

下面我们来创建一个选项菜单,步骤如下:

①:先去覆盖Activity中的onCreateOptionsMenu(),但是这个方法只会在第一次调用的时候会被实例化,当实例化时候,就不会在被调用了

②:调用add()来添加菜单选项.add(groupId, itemId, order, titleRes)方法中个参数的意思是,

* @param group
* : 选项组号,一般都设置成0就OK啦
* @param itenId
* : 选项的Id 很重要
* @param order
* :顺序,一般来说都设置0就行了
* @param titelRes
* : 选项的标题名字
*/

③:覆盖onCreateOptionsMenu(Menu menu)menu.getItemId()来获取选项的Id


下面来看下Demo源代码:


二:SubMenu(子菜单)

平时我们希望把同一类型的菜单进行分级来显示,这时候我们会用SubMenu.下面的Demo,是创建两个菜单选项,当点击Menu3的时候 会弹出menu1和menu2的菜单

创建一个SubMenu的基本步骤如下

①: 先去覆盖Activity中的onCreateOptionsMenu()

②:调用addSubMenu()来添加子菜单项,然后调用add()来添加子菜单

③:覆盖onCreateOptionsMenu(Menu menu)menu.getItemId()来获取选项的Id,去响应单击事件

下面是源代码:

截图显示:

三:ContexgMenu(上下文菜单)

首先什么是上下文菜单,当我们长时间按住屏幕的时候,会弹出菜单,那个就是ContextMenu();

看先文档中对创建ContextMenu()的方法:

To show a context menu on long click, most clients will want to call registerForContextMenu(View) and override onCreateContextMenu(ContextMenu, View, ContextMenu.ContextMenuInfo).

【注】 长按按钮,来显示上下文菜单我们必须要去调用registerForContextMenu(View) ,onCreateContextMenu(ContextMenu, View, ContextMenu.ContextMenuInfo).

看下实现的源代码:



分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics