06.Android之Menu
来源:互联网 发布:微信斗牛软件 编辑:程序博客网 时间:2024/04/28 08:02
根据Android的SDK文档,记下Menu的一些要点:
一、Menu概述:
默认情况下,每个Activity都支持一个可定制或可选的菜单。可以在该菜单添加元素和处理添加元素的点击事件。添加菜单项最简单的方式是在XML文件中通过MenuInflater填充菜单,这个最简单的方式通过onOptionsItemSelected(MenuItem)和onContextItemSelected(MenuItem)绑定点击功能代码。
二、不同的菜单类型有不同的表现,有如下几种菜单:
1.Contex menus:不支持菜单项快捷键(item shortcuts)和图标(icons)。
2.Options menus:
其中的icon menus不支持确认项(check marks),仅仅显示菜单项的主标题(condensed title)。
其中的expanded menus(只有6个菜单项可见,想要更多的菜单项可见必须在icon menu中设置“More“属性)不支持菜单项图标(item icons),确认项(check marks)也是被阻止的。
3.Sub menus:不支持菜单项图标(item icons)和嵌套的子菜单。
三、Activity中跟菜单相关的方法介绍:
Menu的成员就不详细介绍了,下面是Activity中与菜单相关的方法列表:
closeContextMenu():
closeOptionsMenu():
getMenuInflater():
invalidateOptionsMenu():
onContextItemSelected(MenuItem item):
onContextMenuClosed(Menu menu):
onCreateContextMenu(ContextMenu menu, View v, ContextMenu.ContextMenuInfo menuInfo):
onCreateOptionsMenu(Menu menu):
onCreatePanelMenu(int featureId, Menu menu):
onMenuOpened(int featureId, Menu menu):
onOptionsItemSelected(MenuItem item):
onOptionsMenuClosed(Menu menu):
onPanelClosed(int featureId, Menu menu) :
onPrepareOptionsMenu(Menu menu):
onPreparePanel(int featureId, View view, Menu menu):
openContextMenu(View view):
openOptionsMenu():
registerForContextMenu(View view):
其中大多数方法都比较容易,只需要注意如下两个方法:
onCreateOptionsMenu(Menu menu):初始化Activity的标准选项菜单内容。
这个方法只在该选项菜单首次显示的时候被调用。每次显示的时候的菜单的修改在onPrepareOptionsMenu(Menu)方法里面。可以在该方法里面添加打印日志,可以看到日志记录的确只会被打印一次。
可以安全的持有该菜单(和它的元素),也可以做需要的修改,直到下次onCreateOptionsMenu()方法被呼叫。
当按下手机设备上的menu按钮时,该方法就被调用。
onCreateContextMenu(ContextMenu menu, View v, ContextMenu.ContextMenuInfo menuInfo):包含context菜单的view被显示的时候呼叫本方法。
跟onCreateOptionsMenu()方法不同,onCreateContextMenu()在每次context菜单被显示的时候都会被调用并且每次都填充view。
View被创建的时候就会调用该方法,该方法返回后,持有该context菜单是不安全的。
- 06.Android之Menu
- Android之Menu
- Android学习之menu
- Android学习之menu
- android之menu相关
- Android之Menu
- android--widget之menu
- android之Menu
- Android学习之menu
- android之Menu
- Android之menu
- Android控件之Menu
- Android 之Menu
- Android复习之Menu
- Android学习之Menu
- Android之Menu
- ANDROID 之menu菜单
- Android之Menu菜单
- SWF 文件不能访问本地资源 只有仅限于文件系统的 SWF 文件和可信的本地 SWF 文件可以访问本地资源。
- 运算符优先级顺口溜
- 如何让两个div并排显示
- C++ Vector 使用心得
- 如何在html页面中插入flash透明背景
- 06.Android之Menu
- 多线程编程(一):线程创建和退出
- 插件45:使用短地址
- 多线程知识点整理
- android中读写SD Card文件
- H264/AVC Profile and Level 简介 转自:http://blog.csdn.net/wanggp_2007/article/details/4863573
- 百度Android开发面试题
- MTK——TASK创建及使用
- 在ubuntu下安装sphinx-chinese 用于xml