Glide 基础配置BaseRequestOptions

1 设置缓存:DiskCacheStrategy

skipMemoryCache :内存缓存策略
    glide默认是打开内存缓存的,如果想关闭的话设置为true
    true 关闭内存缓存,false 打开内存缓存(默认)

diskCacheStrategy:磁盘缓存策略
    DiskCacheStrategy.NONE 关闭磁盘缓存

DiskCacheStrategy 的枚举意义:
    DiskCacheStrategy.NONE: 表示不缓存任何内容。
    DiskCacheStrategy.DATA: 表示只缓存原始图片。
    DiskCacheStrategy.RESOURCE: 表示只缓存转换过后的图片。
    DiskCacheStrategy.ALL : 表示既缓存原始图片,也缓存转换过后的图片。
    DiskCacheStrategy.AUTOMATIC: 表示让Glide根据图片资源智能地选择使用哪一种缓存策略(默认选项)。

Glide的缓存资源分为两种:原始图片data 和经过压缩和变形等处理后的图片RESOURCE
源码默认  @NonNull private DiskCacheStrategy diskCacheStrategy = DiskCacheStrategy.AUTOMATIC;

 //关闭内存缓存和磁盘缓存
RequestOptions options = new RequestOptions().skipMemoryCache(true).diskCacheStrategy(DiskCacheStrategy.NONE);

2 优先级设置

Priority的枚举:

public enum Priority {
  IMMEDIATE,
  HIGH,
  NORMAL,
  LOW,
}
源码默认 @NonNull private Priority priority = Priority.NORMAL;
RequestOptions options = new RequestOptions().priority(Priority.HIGH);

3设置占位图:

源码 设置drawable 或者是 resourceId
  @Nullable private Drawable placeholderDrawable;
  private int placeholderId;
  public T placeholder(@Nullable Drawable drawable) {
    return selfOrThrowIfLocked();
  }
  public T placeholder(@DrawableRes int resourceId) {
    return selfOrThrowIfLocked();
  }
//设置resourceId
RequestOptions options = new RequestOptions().placeholder(R.mipmap.ic_launcher);
//设置drawable
Drawable drawable = getResources().getDrawable(R.mipmap.ic_launcher);
RequestOptions options = new RequestOptions().placeholder(drawable);

4设置显示加载失败或者是加载错误图片

  @Nullable private Drawable errorPlaceholder;
  private int errorId;
  @NonNull
  @CheckResult
  public T error(@Nullable Drawable drawable) {
    return selfOrThrowIfLocked();
  }

  public T error(@DrawableRes int resourceId) {
    return selfOrThrowIfLocked();
  }

5重新设置图片的大小
在这里插入图片描述必须添加:centerCrop()或fitCenter()才可以;

centerCrop()是将图片按照比例放大到imageview的尺寸;
fitCenter()是将图片按照比例缩小到imageview的尺寸;

6设置编码的格式以及编码的质量

public T encodeFormat(@NonNull Bitmap.CompressFormat format) {
  return set(BitmapEncoder.COMPRESSION_FORMAT, Preconditions.checkNotNull(format));
}
三种格式
public enum CompressFormat {
    JPEG    (0),
    PNG     (1),
    WEBP    (2)
}
0100
public T encodeQuality(@IntRange(from = 0, to = 100) int quality) {
  return set(BitmapEncoder.COMPRESSION_QUALITY, quality);
}

7 设置图片的像素

默认的是ARGB_8888;
public T format(@NonNull DecodeFormat format) {
  Preconditions.checkNotNull(format);
  return set(Downsampler.DECODE_FORMAT, format).set(GifOptions.DECODE_FORMAT, format);
}
一共有两种
public enum DecodeFormat {
    PREFER_ARGB_8888,
    PREFER_RGB_565;
}

8 transforms 变换操作
比如将图片设置为圆角图片,圆弧图片,这个以后详解
可以参考这个Glide3升级到Glide4遇到的问题以及解决方法

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值