Android中上下文菜单选项--ContextMenu

Android系统中的ContextMenu(上下文菜单)类似于PC中的右键弹出菜单,当一个视图注册到一个上下文菜单时,执行一个在该对象上的“长按”动作,将出现一个提供相关功能的浮动菜单。上下文菜单可以被注册到任何视图对象中,不过,最常见的是用于列表视图ListView的item,在按中列表项时,会转换其背景色而提示将呈现上下文菜单。

注意:上下文菜单不支持图标和快捷键。

为了创建一个上下文菜单,你必须重写这个活动的上下文菜单回调函数:onCreateContextMenu()和 onContextItemSelected()。在回调函数onCreateContextMenu()里,你可以通过使用一个add()方法来添加菜单项,或者通过扩充一个定义在XML中的菜单资源。然后,通过registerForContextMenu()为这个视图注册一个上下文菜单ContextMenu.

下面我通过一个实例Demo来展示下ContextMenu的基本使用,通过手动添加Menu菜单和XML文件两种方式来配置Menu的选项。

[1] 该Demo的工程结构目录图如下:

Android中上下文菜单选项--ContextMenu

[2] res/layout目录下的main.xml布局文件源码如下:


[3] res/menu目录下的 cmenu.xml 菜单选项文件源码如下:


[4] com.andyidea.menudemo包下的 MenuActivity.java 源码如下:


[5] Demo运行后的运行截图如下:

Android中上下文菜单选项--ContextMenu

你可能感兴趣的:(contextMenu)