快捷搜索: 王者荣耀 脱发

使用Glide进行预加载图片

废话不多说,直接上步骤

1.Glide的预加载api是preload

具体用法为:

Glide3

Glide.with(context).load(url).diskCacheStrategy(DiskCacheStrategy.SOURCE).preload(width, height)

Glide4

Glide.with(context).load(url).apply(RequestOptions().diskCacheStrategy(DiskCacheStrategy.RESOURCE)).preload(width,height)

2.需要注意的地方

diskCacheStrategy需要设置为DiskCacheStrategy.SOURCE(或RESOURCE)

预加载和加载都要用这个

加载和预加载时需要设置固定的宽高,并且预加载的宽高要和加载时的宽高一样

预加载:xxx.preload(width,height)

加载时:Glide.with(context).xxx.override(width, height).into(imageView)

3.最后一点优化效果

如果是同一个View加载图片,由于加载过程中,会有一瞬间的黑屏,会使别人以为没有预加载好,所以可以设置默认视图为之前的图片:

加载时:Glide.with(context).xxx.placeholder(imageView.drawable).into(imageView)//java: imageView.getDrawable()

经验分享 程序员 微信小程序 职场和发展