转: http://hi.baidu.com/dean_wang/blog/item/00b0e247d223b528cefca374.html Android onItemLongClick+onCreateContextMenu实现长按ListItem弹出不同菜单 2010-09-07 18:29
前一段时间做项目需要做一个效果:一个ListActivity,长按不同的item弹出的菜单不一样;如下图所示我们长按不同的item需要弹出不同标题的menu:

长按事件可以使用ListView的setOnItemLongClick函数进行关联,但是在响应的onItemLongClick函数里面没办法调用ListView显示菜单。
在Android的菜单分两种:options menu 、context menu 。(也有分三种的:options menu 、context menu、sub menu)其中options menu是和Activity相关联的,context menu 是和View关联。我们需要点击控件出现的菜单属于context menu ;但是context menu 只能通过setOnCreateContextMenuListener来进行关联。
实现这个效果需要理解对ListView的item长按之后发生的事情:
首先触发的是onItemLongClick函数,执行onItemLongClick操作,然后根据onItemLongClick的返回值判断是不是执行OnCreateContextMenuListener函数;如果onItemLongClick返回false,则会继续执行OnCreateContextMenuListener函数,否则返回true,忽略OnCreateContextMenuListener函数。
因此我们可以在onItemLongClick的时候进行判断并且准备好OnCreateContextMenuListener中需要用到的数据,然后在OnCreateContextMenuListener中调用这些数据显示即可。

更多相关文章

  1. java-universal-tween-engine
  2. [安卓开发Android][叠层 层叠 卡片效果]RecyclerView与CardView
  3. Android访问网络常见问题之一
  4. 如何在JNI中抛异常
  5. Android(安卓)RecyclerView 滑动到指定item(position)并加动画
  6. tab使用 TabActivity TabHost Tabspec常用方法
  7. android JNI 多线程 C函数回调
  8. Android(安卓)读取扫码枪的内容,可以读取条形码 ,二维码
  9. Android:TextView的垂直滚动效果,和上下滚动效果

随机推荐

  1. 大家好,有朋自远方来,不亦说乎,请多关照哈
  2. 大家好啊,新手一枚,请多关照哈
  3. 字符串学习
  4. php分支与循环 、php与html混编学习
  5. 刚才看到一个P身份證的楼主P出来假的不得
  6. 单文件上传与多文件上传,简单分页操作的
  7. 属性和方法重载及命名空间与类自动加载器
  8. 实例演示字符串函数
  9. MySQL主从复制配置
  10. Android(安卓)Studio常用设置