Listview Checkbox错乱问题

解决办法:

  • 1、设置一个Map集合,用于保存第一个listview中数据的选中与否状态,然后根据这个状态设置给checkbox的状态,这样就不会混乱了。

  • 2、从数据源出发,在数据实体对象里(服务器没有返回判断的字段)加个字段判断!(简单高效)下面代码实现这个:

第一步:数据源添加字段字段

private boolean isSelect;
public boolean isSelect() {
            return isSelect;
        }

public void setSelect(boolean select) {
            isSelect = select;
        }

第二步:Adapter里操作

 //多选地址
         addressHolder.cbAddressUsername.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
                    @Override
                    public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
                        if (isChecked) {//被选择
                            datasBean.setSelect(true);
                        } else {
                            datasBean.setSelect(false);
                        }
                    }
                });
 //是否选择
                addressHolder.cbAddressUsername.setChecked(datasBean.isSelect());
注意:上面的顺序别错了!

到此搞定!

发布了43 篇原创文章 · 获赞 9 · 访问量 2万+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章