如果ListView中的单个Item的view中存在checkbox,button等view,会导致ListView.setOnItemClickListener无效,

事件会被子View捕获到,ListView无法捕获处理该事件.

解决方法:

在checkbox、button对应的view处加android:focusable="false"
android:clickable="false" android:focusableInTouchMode="false"

其中focusable是关键

OnClickListener调用getSelectedItemPosition(),Click 和selection 是不相关的,Selection是通过D-pad or trackball 来操作的,Click通常是点击操作的。

arg2参数才是点击事件位置的参数

第二种方法 就是在自己的getView中

convertView = mInflater . inflate ( R . layout . list_item_text , null );
convertView
. setClickable ( true );
convertView
. setOnClickListener ( clickListener );
publicOnClickListenermyClickListener=newOnClickListener(){
publicvoidonClick(Viewv){
//code to be written to handle the click event
}
};
转载自: http://blog.csdn.net/homebei2/article/details/6277905

更多相关文章

  1. android Java 提交数据到服务器的两种方式中四种方法
  2. android事件之onInterceptTouchEvent,dispatchTouchEvent,onTouc
  3. Android(安卓)多屏适配解决方案
  4. android中scrollview与webview冲突事件
  5. Android(安卓)Studio 触摸屏事件
  6. arcgis for android 学习 - (4) 了解mapView的一些方法和事件
  7. Android触屏事件处理流程浅析
  8. Android各种Adapter的用法
  9. UI篇--布局问题

随机推荐

  1. 收藏的Android非常好用的组件或者框架
  2. android设备上视频只有声音没有图像
  3. Android(安卓)SDK下的各目录介绍
  4. android之内存管理的文章收集
  5. android imageswitcher gallery 根据数据
  6. Android JNI 开启子线程后调用 Activity
  7. Android SD
  8. android 学习记录备忘录
  9. Android dialog 全屏
  10. android中判断网络是否连接