ListView或RecyclerView子項item複用資料錯亂

weixin_33912246發表於2018-01-18

常見場景

ListView或RecyclerView的adapter中
——若存在ImageView,當上下滑動超過一螢幕後,再滑回來,ImageView會複用載入過的圖片
——若存在TextView,文字會被複用
——若存在CheckBox,未選擇的狀態會被勾選上
導致看上去資料錯亂

主要原因

item UI重複永遠都是因為判斷不全,此時要仔細檢查

處理

判斷條件後的if...else一定要寫全,特別是else後面的條件一定要作對應處理,即可避免上下滑動後因為資料問題複用導致的資料錯亂。

舉個自己遇到過的例子 (記得else後面一定要補全此情形下的顯示情況)

3787831-422db34dee4e06fc.png

相關文章