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萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章