Glide 网络加载图片的框架
添加依赖:
implementation 'com.github.bumptech.glide:glide:3.7.0'
使用方法:
Glide.with(context) .load(show_url) //需要加载的图片url // .crossFade()//过渡动画 .dontAnimate() //关闭动画 .fitCenter() //图片与控件的适配 .diskCacheStrategy(DiskCacheStrategy.SOURCE) //缓存策略为:原始缓存 .placeholder(R.drawable.picture_demo) //加载过程显示的图片 .error(R.drawable.picture_demo) //加载失败显示的图片 .listener(new RequestListener<String, GlideDrawable>() { //设置监听器 @Override public boolean onException(Exception e, String model, Target<GlideDrawable> target, boolean isFirstResource) { //返回错误时 return false; } @Override public boolean onResourceReady(GlideDrawable resource, String model, Target<GlideDrawable> target, boolean isFromMemoryCache, boolean isFirstResource) { //加载成功时 return false; } }) .into(holder.iv_moments_picture); //需要显示的图片控件
注意:
.diskCacheStrategy(DiskCacheStrategy.SOURCE)的参数如下:
diskCacheStrategy(DiskCacheStrategy strategy).设置缓存策略。
DiskCacheStrategy.SOURCE:缓存原始数据;
DiskCacheStrategy.RESULT:缓存变换(如缩放、裁剪等)后的资源数据;
DiskCacheStrategy.NONE:什么都不缓存;
DiskCacheStrategy.ALL:缓存SOURC和RESULT。
如果不设置为DiskCacheStrategy.SOURCE,可能会不缓存,或者查找缓存很慢,导致图片经常显示不出来。