android listview checkbox 监听,ListView的View回收引起的checkbox状态改变监听等问题解决方案...

之前讲到了自定义Adapter传递给ListView时,因为ListView的View回收,需要注意当ListView列表项中包含有带有状态标识控件的问题。详情可见之前发的帖[url=自定义Adapter实现ListView带多选框等状态控件的注意事项 //www.jb51.net/article/33425.htm

还是这个问题,讲一个我遇到的因为两行代码位置相反引起的问题。

我的ListView中每行View包含一个ImageView、TextView、CheckBox。当ListView中有一个或一个一行CheckBox被选中就让ListView上面的Button显示,否则就隐藏。因此,需要对每行View中的CheckBox设置监听。我使用CheckBox中的OnCheckedChangeListener监听器,当CheckBox的状态发生改变的时候就会触发这个监听器。先看下我自定义给ListView的Adapter的getView方法中的一些关键代码:

这是getView方法中使用到的内部类:

static class ViewHolder {

public ImageView imageView;

public TextView textView;

public CheckBox checkBox;

}

这是getView方法中利用ListView回收机制循环利用View的代码:

public View getView(int position, View convertView, ViewGroup parent) {

ViewHolder viewHolder;

if (convertView == null) {

convertView = infl

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值