【已解决】 RecyclerView中使用Gilde第一次加载网络图片慢
图片如下

代码如下
Glide.with(binding.imageviewMediaItem.getContext()).load(UriUtil.getImageUri(item.getMediaInfo()))
.into(new ImageViewTarget<Drawable>(binding.imageviewMediaItem) {
@Override
protected void setResource(@Nullable Drawable resource) {
item.setAvailable(true);
binding.imageviewMediaItem.setScaleType(ImageView.ScaleType.CENTER_CROP);
binding.imageviewMediaItem.setImageDrawable(resource);
}
@Override
public void onLoadFailed(@Nullable Drawable errorDrawable) {
super.onLoadFailed(errorDrawable);
if (UriUtil.isRecordVideo(item.getMediaInfo()) || UriUtil.isDvrVideo(item.getMediaInfo())) {
item.setAvailable(true);
} else {
item.setAvailable(false);
}
binding.imageviewMediaItem.setScaleType(ImageView.ScaleType.CENTER_INSIDE);
binding.imageviewMediaItem.setImageResource(R.mipmap.img_gallery_image_bg);
}
});
有遇到类似问题的小伙伴吗?如何解决呢?
加载慢,可以减小图片的大小,你看一下你们的api,是否可以在请求路径上加控件的大小,这样子可以加载比较小的图片,另外,可以单独设置glide的加载中图片,也就是loading。理论上来说,这些小图片,刷一下就出来了。另外则是预加载,加载完了再显示,可以监听到图片的加载状态的。