android – 当notifydatasetchanged时,为什么Glide会使项目ImageView闪烁
作者:互联网
我在使用RecyclerView时使用Glide 3.7.0.刷新时项目视图始终闪烁(调用notifyDataSetChanged).
这是我的代码:
Glide
.with(context)
.load(filepath)
.diskCacheStrategy(DiskCacheStrategy.NONE)
.skipMemoryCache(true)
.dontAnimate()
.into(imageview);
当我不使用缓存时,当调用notifyDataSetChanged方法并且Glide尚未完成加载位图时,ImageView具有空位图.
如果我使用以下代码:
Glide
.with(context)
.load(filepath)
.dontAnimate()
.into(imageview);
然后项目ImageView不再闪烁(使用缓存).
我想动态更新项目视图,因此我禁用了滑动缓存.
有没有解决这个眨眼错误的解决方案?
非常感谢你!
解决方法:
经过多次尝试,只需使用SimpleTarget解决了我的问题
谢谢!
Glide
.with(context)
.load(filepath)
.asBitmap()
.diskCacheStrategy(DiskCacheStrategy.NONE)
.skipMemoryCache(true)
.dontAnimate()
.into(new SimpleTarget<Bitmap>() {
@Override
public void onResourceReady(Bitmap arg0, GlideAnimation<? super Bitmap> arg1) {
// TODO Auto-generated method stub
holder.mItemView.setImageBitmap(arg0);
}
});
标签:notifydatasetchanged,blink,android-glide,android,android-recyclerview 来源: https://codeday.me/bug/20190930/1835945.html