1.引入:在gradle中添加依赖:
implementation 'com.github.bumptech.glide:glide:4.13.0'
kapt 'com.github.bumptech.glide:compiler:4.13.0'
implementation 'jp.wasabeef:glide-transformations:4.3.0'
2:在主项目包下 自定义一个类继承AppGlideModule
@GlideModule
class MyAppGlideModule : AppGlideModule() {
}
plugins { id 'kotlin-kapt' }
然后rebuild一下就生成GlideApp类了。
3:使用GlideApp加载图片
GlideApp.with(this).load(url).into(binding.imageView) 可直接使用centerCrop,使用起来非常方便 GlideApp.with(this).load(url).centerCrop().into(binding.imageView)
4:对图片的处理
这里我们需要用到 RequestOptions 类
例如加载一个带边框的圆形图片
val options =
RequestOptions()
.centerCrop()
// 设置占位图
.placeholder(R.color.white)
// 设置错误图片
.error(R.color.white)
// 图片变换--圆形图片加边框
.transform(CropCircleWithBorderTransformation(10,resources.getColor(R.color.purple_200)))
// 缓存策略
.diskCacheStrategy(DiskCacheStrategy.AUTOMATIC)
GlideApp.with(this).load(url).apply(options).into(binding.imageView4)
5:总结了一些常见的图片处理,写了个工具类:
在我的另外一个博客上: