- 3
- 0
- 约9.13千字
- 约 27页
- 2017-07-05 发布于湖北
- 举报
8-2上下文菜单(context menu) 用手指按住某个带有上下文菜单的部件不放时,就可以调出上下文菜单。 总的来说,上下文菜单与选项菜单的构成类似。它们的主要区别在于如何填充菜单和如何获知菜单项被选择。 8-2上下文菜单(context menu) 首先,需要说明Activity中的哪个(些)部件有上下文菜单。为此,要在Activity中调用registerForContextMenu (),传入带有上下文菜单的view(部件)。 例如: registerForContextMenu (getListView() ); 8-2上下文菜单(context menu) onCreateContextMenu()的参数有ContextMenu本身、上下文菜单所属的view以及ContextMenu.ContextMenuInfo;最后一个参数保存的是用户在调出上下文菜单时按住的列表项,可以根据这个信息来自定义上下文菜单。例如,可以根据该项的当前状态来切换可选的菜单项。例如 : public void onCreateContextMenu(ContextMenu menu, View v, ContextMenuInfo menuInfo) {??? ??? ... 设置Menu的处理,和Option Menu一样 ....,同样的支持子菜单 ??? ??? super.onCreateContextMenu(menu, v, menuInfo);??? } 8-2上下文菜单(context menu) public boolean onContextItemSelected(MenuItem item) { ... 我们的处理内容... return super.onContextItemSelected(item); } 8-3 综合示例(Comprehensiveexamples) 课堂案例\MenuDemo 8.4.1菜单的XML结构(XML MENU) 菜单的XML文件位于项目的res/menu目录中,与项目可能用到的其他资源放在一块。与布局文件一样,一个项目也可以有多个菜单XML文件,每个文件的扩展名都是.xml,但以不同的文件名命名。 8.4.2综合示例 课堂案例\Inflation 8.4.1菜单的XML结构(XML MENU) ? 根元素必须是menu。 ?menu元素中是item元素和group元素,后者表示可以作为一组项目来操作的菜单项的集合。 ?通过在item元素中添加menu元素来指定子菜单,然后再使用这个新的menu元素来描述子菜单的内容。 ?xml version=1.0 encoding=utf-8? menu xmlns:android=/apk/res/android item … /item group … /group ……. /menu 8.4.1菜单的XML结构(XML MENU) item android:id=@+id/close android:title=Close android:orderInCategory=3 android:icon=@drawable/eject / 标题(title): 通过item元素的android:title特性指定菜单项的标题。可以是字符串字面量,也可以是对字符串资源的引用(例如,@string/foo)。 图标(icon): 菜单项的图标是可选的。指定图标时,要将一个指向可绘制资源的引用(例如,@drawable/eject)作为item元素android:icon特性的值。 次序(order):默认情况下,菜单项的先后次序由它们在XML文件中的次序决定。要改变默认次序,可以在item元素中指定 android:orderInCategory特性 8.4.1菜单的XML结构(XML MENU) item android:id=@+id/non_ghost“ android:enabled=false android:visible=true android:alphabeticShortcut=n / 启用(enabled): 可以启用或禁用菜单项、组,方法是在XML文件中通过item和group元素的android:enabled特性来控制。 可见(visible): 在XML.文件中通过item和group元素的android:visible特性可以控制菜单项、组是否可见。 快捷键(shortcut):可以为菜单项指定快捷键,如一个字母(android:alphab
原创力文档

文档评论(0)