下载 添加依赖
添加依赖
在 app 目录下打开 build.gradle
// Glide
implementation 'com.github.bumptech.glide:glide:4.11.0'
kapt 'com.github.bumptech.glide:compiler:4.11.0'
基本用法
Glide.with(context)
.load(url)
.into(imageView);
- with(context:Context) 需要上下文。
- load(url:String) 字符串性质的网络图片Url。
- into(imageView :ImageView) 你需要显示的图片的控件
取消加载
Glide.with(context).clear(imageView);
Glide.with()中传入Activity或者Fragment时会跟随它们创建和销毁,所有手动取消是非必要的。
补充
- setDefaultRequestOptions(RequestOptions requestOptions)
用于配置加载图片时的默认选项,编码模式包含在其中,默认配置是RGB_565
参数:
- requestOptions:设置 RequestOptions 到加载的应用中。
com.bumptech.glide.RequestManager 类
A class for managing and starting requests for Glide.
一个用于管理和启动Glide请求的类。
Can use activity, fragment and connectivity lifecycle events to intelligently stop, start, and restart requests.
可以使用活动、片段和连接生命周期事件智能地停止、启动和重新启动请求。
Retrieve either by instantiating a new object, or to take advantage built in Activity and Fragment lifecycle handling, use the static Glide.
检索通过实例化一个新对象,或利用内置在活动和片段生命周期处理,使用静态滑翔。
load methods with your Fragment or Activity.
用你的片段或活动加载方法。
RequestOptions类
提供选项来给 Glide 自定义加载。
- placeholder(Drawable drawable)
设置加载时的默认图片。
参数:
- drawable,显示图片的占位符
- onError(Drawable drawable)
设置图片加载错误时的图片。
参数:
- drawable,显示图片的占位符
- diskCacheStrategy(DiskCacheStrategy diskCacheStrategy)
将 DiskCacheStrategy 类型应用到单独请求中。允许你加载过程中使用或者写入磁盘缓存,选择性的仅支持无修改的原声数据,或者变换过的缩略图,或者兼而有之。
参数:
- diskCacheStrategy:使用DiskCacheStrategy类的常量作为缓存策略。
DiskCacheStrategy 类
缓存策略(Disk 、Cache 、Strategy)
允许你加载过程中使用或者写入磁盘缓存,选择性的仅支持无修改的原声数据,或者变换过的缩略图,或者兼而有之。
默认是AUTOMATIC,会尝试对本地和远程图片使用最佳策略。当你加载远程数据时,AUTOMATIC策略会存储维被你加载过程修改过的原始数据(例如,变换,裁剪),因为下载远程数据相比调整磁盘上已经存在的数据要昂贵的多。对于本都数据,AUTOMATIC 策略会存储变换过的缩略图,因为即使你再次生成另一个尺寸或者类型的图片,取回原始数据也是很容易的。
类型介绍
DiskCacheStrategy.NONE: 表示不缓存任何内容。
DiskCacheStrategy.DATA: 只缓存原始图片。
DiskCacheStrategy.RESOURCE:表示只缓存转换过后的图片。
DiskCacheStrategy.ALL:表示既缓存原始图片,也缓存转换过后的图片。
DiskCacheStrategy.AUTOMATIC: 表示让Gilde根据图片资源智能的选择一种缓存策略(默认)。
CustomTarget 类
用于加载图片资源。
方法名 | 参数 | 描述 | 返回值 |
---|---|---|---|
onResourceReady | @NonNull R resource, @Nullable Transition<? super R> transition | 资源加载完成后调用的方法 | void。返回加载的资源 |
onLoadCleared | @NonNull android.graphics.drawable.Drawable placeholder(可以选择的占位符,可为null) | 取消加载并释放资源的生命周期回调。(在重新绘制容器时,你必须确保onResourceReady()方法不接受任何当前的Drawable) | void |
引用