checkbox设置选中状态代码放到设置监听后面
比如:
holder.cbChoose.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() { @Override public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) { if(isChecked){ choosesIds.add(uploadBatch.getId()); batchIds.add(uploadBatch.getId()); Log.e("选中的position",batchIds.toString()); }else { choosesIds.remove(uploadBatch.getId()); batchIds.remove(uploadBatch.getId()); Log.e("选中的position",batchIds.toString()); } } }); if(choosesIds.contains(uploadBatch.getId())){ holder.cbChoose.setChecked(true); }else { holder.cbChoose.setChecked(false); }