上下文菜单

又称长按菜单。当一个视图注册了上下文菜单时,执行一个在该对象上长按(2秒)的动作,将出现一个具有相关功能的浮动菜单。

类概述

扩展自Menu的上下文菜单提供了修改上下文菜单头(header)的功能。

上下文菜单不支持菜单项的快捷方式和图标。

公共方法

public abstract void clearHeader ()
清除上下文菜单头的信息。(包括图片和文字信息)
public abstract ContextMenu setHeaderIcon (Drawable icon)
为上下文菜单头设置图标
public abstract ContextMenu setHeaderIcon (int iconRes)
设置上下文菜单头图标为指定的资源id
public abstract ContextMenu setHeaderTitle (int titleRes)
通过资源标识符为上下文菜单头的标题栏设置文字。
public abstract ContextMenu setHeaderTitle (CharSequence title)
设置上下文菜单的标题,显示在标题栏
public abstract ContextMenu setHeaderView (View view)
设置View 到上下文菜单头上。将替代上下文菜单头的图标和标题(或者替代你之前设置的headerView)

代码示例

当执行长按上下文菜单时,大多数情况会调用registerForContextMenu(View) 函数和重写执行onCreateContextMenu(ContextMenu, View, ContextMenu.ContextMenuInfo)函数。因为要创建一个上下文菜单,你必须重写这个活动的上下文回调函数onCreateContextMenu() 并且 通过registerForContextMenu(View) 为其注册上下文菜单。
注册上下文菜单
     registerForContextMenu(lv);//为ListView添加上下文菜单       

添加菜单项
   @Overridepublic void onCreateContextMenu(ContextMenu menu, View v,ContextMenuInfo menuInfo) {// TODO Auto-generated method stubtry {AdapterContextMenuInfo info = (AdapterContextMenuInfo) menuInfo;   JSONObject object = mData.getJSONObject(info.position);menu.setHeaderTitle(object.getString("title"));} catch (Exception e) {return;}menu.add(0, 1, 0, "删除该聊天");menu.add(0, 2, 0, "置顶聊天");super.onCreateContextMenu(menu, v, menuInfo);}@Overridepublic boolean onContextItemSelected(MenuItem item) {// TODO Auto-generated method stubAdapterContextMenuInfo itemInfo = (AdapterContextMenuInfo) item.getMenuInfo();try {JSONObject object = mData.getJSONObject(itemInfo.position);switch (item.getItemId()) {case 1:Toast.makeText(this, object.getString("title"), Toast.LENGTH_LONG).show();break;default:break;}} catch (JSONException e) {// TODO Auto-generated catch blocke.printStackTrace();}return super.onContextItemSelected(item);}

效果图

长按“姓名2”
点击“删除该聊天”

【Android】上下文菜单ContextMenu的使用相关推荐

  1. Android进阶(二十八)上下文菜单ContextMenu使用案例

    上下文菜单ContextMenu使用案例 前言 回顾之前的应用程序,发现之前创建的选项菜单无法显示了.按照正常逻辑来说,左图中在"商品信息"一栏中应该存在选项菜单,用户可进行分享等 ...

  2. Android 上下文菜单实现 context Menu

    Android 上下文菜单实现 2011年3月31日9:25 来源:Android中文网 我有话说(2人参与) 首先解释一下什么是上下文菜单,Android中上下文菜单就是ContextMenu.他的 ...

  3. (4.0.15.3)Android 的上下文菜单: ContextMenu的使用方法以及与OptionMenu的区别

    ContextMenu是Android的context menu上下文菜单,选择某项VIEW后长按menu键,就会显示出来.比如EditeText就可以通过长按来弹出拥有"cut" ...

  4. android 使用上下文菜单ContextMenu

    Android 的上下文菜单类似于 PC 上的右键菜单.当为一个视图注册了上下文菜单之后,长按这个视图对象就会弹出一个浮动菜单,即上下文菜单.任何视图都可以注册上下文菜单,不过,最常见的是用于列表视图 ...

  5. Android 上下文菜单(Context Menu)

    一.概述 Android中,上下文菜单是通过onLongClick(...)事件访问的.在事件触发后显示菜单项. 在使用上下文菜单时,通常在onCreate(...)方法中,先行注册上下文菜单.在实现 ...

  6. 上下文菜单ContextMenu

    Res目录下menu下创建listview_menu.xml <?xml version="1.0" encoding="utf-8"?> < ...

  7. Android 上下文菜单实现

    1.覆盖Activity的onCreateContenxtMenu()方法,调用Menu的add方法添加菜单项(MenuItem). 2.覆盖Activity的onContextItemSelecte ...

  8. Android 上下文菜单

    1.创建菜单资源文件 在res下新建menu文件夹:右击menu文件夹新建菜单资源文件menu.xml. <?xml version="1.0" encoding=" ...

  9. Android开发——菜单(Menu)-——上下文菜单(ContextMenu)、 弹出菜单(PopupMenu)

    上下文菜单(ContextMenu) 长按某个view不放,就会在屏幕中间弹出ContextMenu. 一个Activity中间只可能有一个OptionMenu,但一个Activity中间有多个Vie ...

最新文章

  1. 2022-2028年中国轻型输送带行业市场发展规模及市场分析预测报告
  2. BZOJ2342[Shoi2011]双倍回文——回文自动机
  3. 字符在计算机中是如何表示的?
  4. [工作积累] shadow map问题汇总
  5. vivaldi浏览器_上网高阶用户怎么能少了这3个无广告、安全免费的浏览器呢
  6. Matlab-OpenCV-VC-混合编程配置
  7. 路由协议和路由算法的不同
  8. Redis常见客户端异常汇总
  9. 剑指offer(Python版本)
  10. hashmap储存有向图_HashMap的存储结构及原理
  11. 设计模式(十一):享元模式
  12. 劳力埃大学计算机科学,劳里埃大学计算机科学本科.pdf
  13. C#微信、支付宝扫码支付源码
  14. 催眠曲用计算机怎么弹,在电脑中巧播“催眠曲”
  15. Django_BiDi(双向字符集语言)
  16. 电商平台对接第三方快递鸟物流轨迹查询api接口申请对接全流程
  17. 【转】strace命令详解
  18. vue-admin-实现登出功能
  19. Kibana--KQL查询语法的使用
  20. 数字设计ic芯片流程

热门文章

  1. JS 实现驼峰式转下横线,下横线转驼峰式2
  2. 抛出异常与栈展开(stack unwinding)
  3. 关于创业公司初期的股份
  4. 根据year年的第week周,查询第week周的起止时间
  5. 动态刷新listview数据
  6. Java开发实用工具
  7. windows ssh登录命令
  8. ST官网下载STM32固件库
  9. iphone长截图哪个软件好_Windows长截图技巧、iPhone免费长截图软件
  10. 个人博客制作——其他页面