由于recyclerview的回收机制导致的图片错乱,可能会发生本来没有图片的一个item出现了别的item中的图片。
目前用的解决方法是
@Override
public void onViewRecycled(LinearViewHolder holder) {
if (holder !=null) {
if (holder.img !=null) {
Glide.clear(holder.img);
}
if (holder.linearLayout !=null) {
holder.linearLayout.setVisibility(View.GONE);
}
}
super.onViewRecycled(holder);
}
用这个办法已经可以解决我现在的需求,网上查到的方法还有给imageview添加tag,tag设置为图片的url,当每次载入imageview时,判断tag与获取到的url是否一致。
关于自己遇到的问题做个记录