Android中ListView数据不止一页,滑动后CheckBox丢失选中状态
2016-06-23 13:45
519 查看
在adapter使用全局变量保存选中状态,参考以下写法。
@Override
public View getView(int position, View convertView, ViewGroup parent) {
Role bean = list.get(position);
ViewHolder holder = null;
if(convertView == null){
convertView = inflater.inflate(resourceId,null);
holder = new ViewHolder();
holder.ID = (TextView) convertView.findViewById(R.id.role_id);
holder.roleName = (TextView) convertView.findViewById(R.id.role_name);
holder.check = (CheckBox) convertView.findViewById(R.id.role_check);
convertView.setTag(holder);
}else{
holder = (ViewHolder)convertView.getTag();
}
holder.roleName.setText(bean.getName());
holder.ID.setText(String.valueOf(bean.getId()));
final int posi = position; // posi必须声明为final
holder.check.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
@Override
public void onCheckedChanged(CompoundButton buttonView,
boolean isChecked) {
list.get(pos).setChoosed(isChecked);
}
});
holder.check.setChecked(bean.isChoosed());
return convertView;
}
在adapter使用全局变量保存选中状态,参考以下写法。
@Override
public View getView(int position, View convertView, ViewGroup parent) {
Role bean = list.get(position);
ViewHolder holder = null;
if(convertView == null){
convertView = inflater.inflate(resourceId,null);
holder = new ViewHolder();
holder.ID = (TextView) convertView.findViewById(R.id.role_id);
holder.roleName = (TextView) convertView.findViewById(R.id.role_name);
holder.check = (CheckBox) convertView.findViewById(R.id.role_check);
convertView.setTag(holder);
}else{
holder = (ViewHolder)convertView.getTag();
}
holder.roleName.setText(bean.getName());
holder.ID.setText(String.valueOf(bean.getId()));
final int posi = position; // posi必须声明为final
holder.check.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
@Override
public void onCheckedChanged(CompoundButton buttonView,
boolean isChecked) {
list.get(pos).setChoosed(isChecked);
}
});
holder.check.setChecked(bean.isChoosed());
return convertView;
}
相关文章推荐
- android ListView的Item中有CheckBox,导致OnItemClick不响应的解决办法
- android-AccessibilityService
- Android水波纹特效的简单实现
- android-AccessibilityRecord
- android_弹窗之初入江湖
- Android图像处理之Bitmap类
- Android学习笔记(44):Activity
- android客户端学习 - 常用布局样式及布局优化include , merge,viewStub
- 【Android】31、常见控件的使用方法——ProgressBar
- Android在线视频,RTMP,MediaCodec,MediaCamera(码流_分辨率_帧率)
- Android签名
- android倒计时功能的实现(CountDownTimer)
- Android 6.0 运行时权限处理
- Android之SurfaceView学习(一)
- android ListView 重新进入后如何回到之前位置
- android shape 和 select 的使用
- Android矢量图VectorDrawable及动画
- Android中对Log日志文件的分析[转]
- Android ContentProvider 学习归纳
- android通过BitmapFactory.decodeFile获取图片bitmap报内存溢出的解决办法