RecyclerView復用導致的數據錯亂問題解決方法
在RecyclerView組件復用時,發生數據錯亂問題:點擊一個item后,其他item的狀態也發生改變,原因是RecyclerView的onBindViewHolder()方法,只有在getItemViewType()返回類型不同時才會調用;
所以如果想要每次都調用onBindViewHolder()刷新item數據,就要重寫getItemViewType(),讓其返回position,(在onCreateViewHolder函數中對展示的類型進行判斷)否則很容易產生數據錯亂的現象。
@Override
public int getItemViewType(int position) {
return position;
}
轉載自:https://blog.csdn.net/yangxi_pekin/article/details/78915330