前段时间遇到了一个问题,lListView一直得不到OnItemClickListener监听,很苦恼,不知道是什么原因出现的这种问题。经过仔细查看,这次的ListView和以往的不同,这次的ListView的每一项多个一个复选框,从网上查到,复选框的OnCheckedChangeListener事件和ListView的OnItemClickListener时间有冲突,复选框的OnCheckedChangeListener事件会优先于ListView的OnItemClickListener时间,因此,如果ListView中的Item中包括复选框或者按钮时。都是这些控件会有响应的事件,而ListView却失去了响应。解决这个问题其实很简单。
1:就是在你的ListView的自定义的adapter里面给这个控件单独设置监听。单,前提是要先将对话框或者按钮的focusable属性设置为false,这在xml文件中就可以设置: android:focusable="false"。
2: 在你自定义的适配器中定义一个方法用于给复选框或者按钮添加监听
public void addListener(View convertView, int arg) {
//给复选框添加监听,给按钮添加监听就类似了
((CheckBox) convertView.findViewById(R.id.xuanze))
.setOnCheckedChangeListener(new OnCheckedChangeListener() {
@Override
public void onCheckedChanged(CompoundButton buttonView,
boolean isChecked) {
new AlertDialog.Builder(
ExchangePartActivity.exchangePart)
.setTitle("自定义通用SimpleAdapter")
.setMessage("CheckBox成功触发状态改变监听事件!").show();
}
});
}
3:在适配器的getView方法中调用这个方法就OK了!
分享到:
相关推荐
在listview中添加按钮,并监听相应事件,可以加上自己的方法。
解决listview中 条目复选框的布局复用引起的错位现象。
带复选框的listview,实现方法是设置复选框focusable和clickable为false,然后在listview的onitemclick中做处理
c#中一个很有用的控件listview,在其上添加checkbox,实现全部、反选等功能
在ListView中添加CheckBox,实现多选条目
有源码有实例,delphi Listview复选框checkbox实现单选的功能,代码很精简实用,测试完美!
带编辑框复选框解决了复用问题的listview
同一个Activity中有两个ListView,且两个ListView中都有CheckBox。容易出来CheckBox无法选中的问题,如果你能确定你的代码没有错误的情况下,请检查你的XMl布局文件。
由此看出,“全选”复选框与列表项中的复选框达到了双向控制的效果。 其设计思路:首先,创建自定义控件(CheckListView),在其 ControlTemplate 中定义 CheckBox 和 ListView,并为 ListView 设置 Ite
Android ListView每个Item上面的有TextView和Button,为ListView每个Item上面的按钮添加事件,并获取TextView文本信息。
Android listview viewpager 滑动 跳动 冲突解决 ListView中嵌套ViewPage有或者滑动手势冲突解决 blog 地址 : http://blog.csdn.net/aaawqqq/article/details/43824631
需求如题目:Android listview中item部分区域添加点击事件,在一个界面显示了listview,但显示的内容分为上下两部分,分别是白色的背景和蓝色的背景,现在需要只点击蓝色的背景,才能跳转到其他界面,解决方式如下:...
实现了ListView添加图片、按钮并添加了ListView跟Button 的双监听,Button实现的是Activity的跳转
android中listview的item滑动删除效果,已解决listview点击问题
Android开发——listview中嵌套checkBox复选框实现单选、全选删除列表内容 详情可以看我的博客http://blog.csdn.net/jxnk25/article/details/50358231
listview item点击事件冲突问题
android ListView子控件监听
一个ListView的Item带单选按钮,并实现响应各自的事件。
listview与scrollview冲突问题解决