遵义市住房和城乡建设局官方网站,上海最专业的seo公司,wordpress应用中心,西安那些做网站的公司文章目录 Android Coil总结概述添加依赖用法基本用法占位图变形自定义ImageLoader取消加载协程支持缓存清除缓存监听 简单封装 Android Coil总结 
概述 
Coil 是一个用于 Android 的 Kotlin 图像加载库#xff0c;旨在简化图像加载和显示的过程。它基于 Kotlin 协程#xff0… 文章目录 Android Coil总结概述添加依赖用法基本用法占位图变形自定义ImageLoader取消加载协程支持缓存清除缓存监听 简单封装  Android Coil总结 
概述 
Coil 是一个用于 Android 的 Kotlin 图像加载库旨在简化图像加载和显示的过程。它基于 Kotlin 协程提供了简洁的 API 和高效的性能。 
添加依赖 
implementation io.coil-kt:coil:2.4.0用法 
基本用法 
// 加载网络图片
binding.imageView1.load(https://www.wanandroid.com/resources/image/pc/logo.png)// 加载本地资源图片
binding.imageView2.load(R.drawable.logo)// 加载本地路径图片
val file  File(cacheDir.path  /logo.png)
binding.imageView3.load(file)占位图 
binding.imageView1.load(imgUrl) {crossfade(true) // 淡入淡出placeholder(R.drawable.placeholder) // 加载时占位error(R.drawable.error) // 加载失败占位
}变形 
binding.imageView1.load(imgUrl) {transformations(CircleCropTransformation()) // 圆形
}
binding.imageView2.load(imgUrl) {transformations(RoundedCornersTransformation(16F)) // 圆角
}自定义ImageLoader 
val imageLoader  ImageLoader.Builder(context).crossfade(true).build()
val request  ImageRequest.Builder(context).data(imgUrl).target(binding.imageView1).build()
imageLoader.enqueue(request)取消加载 
val disposable  binding.imageView1.load(imgUrl)
disposable.dispose() // 取消加载协程支持 
Coil 基于 Kotlin 协程可以协程中使用。 
lifecycleScope.launch {val imageLoader  context.imageLoaderval request  ImageRequest.Builder(context).data(imgUrl).build()val drawable  imageLoader.execute(request).drawablebinding.imageView1.setImageDrawable(drawable)
}缓存 
binding.imageView1.load(imgUrl) {diskCachePolicy(CachePolicy.ENABLED) // 启用磁盘缓存memoryCachePolicy(CachePolicy.ENABLED) // 启用内存缓存
}清除缓存 
val imageLoader  context.imageLoader
imageLoader.memoryCache?.clear()
imageLoader.diskCache?.clear()监听 
binding.imageView1.load(imgUrl) {listener(onStart  { Log.e(TAG, 开始) },onSuccess  { request, result - Log.e(TAG, 成功) },onError  { request, result - Log.e(TAG, 失败) },onCancel  { Log.e(TAG, 取消) })
}简单封装 
object CoilImageLoader {private lateinit var imageLoader: ImageLoader// 初始化 Coil 的 ImageLoader// 可以在Application中初始化fun init(context: Context) {imageLoader  ImageLoader.Builder(context).crossfade(true) // 启用淡入淡出效果.build()}// 加载网络图片fun loadImage(imageView: ImageView, url: String) {imageView.load(url, imageLoader) {placeholder(R.drawable.placeholder) // 设置占位图error(R.drawable.error) // 设置错误图}}// 加载圆形图片fun loadCircleImage(imageView: ImageView, url: String) {imageView.load(url, imageLoader) {transformations(CircleCropTransformation()) // 圆形裁剪}}// 加载圆角图片fun loadRoundedCornersImage(imageView: ImageView, url: String, radius: Float) {imageView.load(url, imageLoader) {transformations(RoundedCornersTransformation(radius)) // 圆角}}// 清除内存缓存fun clearMemoryCache() {imageLoader.memoryCache?.clear()}// 清除磁盘缓存fun clearDiskCache(context: Context) {imageLoader.diskCache?.clear()}
}
 文章转载自: http://www.morning.pjwrl.cn.gov.cn.pjwrl.cn http://www.morning.fmrwl.cn.gov.cn.fmrwl.cn http://www.morning.fmgwx.cn.gov.cn.fmgwx.cn http://www.morning.ccphj.cn.gov.cn.ccphj.cn http://www.morning.lzqtn.cn.gov.cn.lzqtn.cn http://www.morning.mynbc.cn.gov.cn.mynbc.cn http://www.morning.yhwyh.cn.gov.cn.yhwyh.cn http://www.morning.grlth.cn.gov.cn.grlth.cn http://www.morning.ljfjm.cn.gov.cn.ljfjm.cn http://www.morning.plqqp.cn.gov.cn.plqqp.cn http://www.morning.hrypl.cn.gov.cn.hrypl.cn http://www.morning.fpbj.cn.gov.cn.fpbj.cn http://www.morning.qpqb.cn.gov.cn.qpqb.cn http://www.morning.lhxkl.cn.gov.cn.lhxkl.cn http://www.morning.wwxg.cn.gov.cn.wwxg.cn http://www.morning.ryjl.cn.gov.cn.ryjl.cn http://www.morning.lhrcr.cn.gov.cn.lhrcr.cn http://www.morning.qznkn.cn.gov.cn.qznkn.cn http://www.morning.jcffp.cn.gov.cn.jcffp.cn http://www.morning.gsjw.cn.gov.cn.gsjw.cn http://www.morning.dwncg.cn.gov.cn.dwncg.cn http://www.morning.nwclg.cn.gov.cn.nwclg.cn http://www.morning.tlbhq.cn.gov.cn.tlbhq.cn http://www.morning.rtkgc.cn.gov.cn.rtkgc.cn http://www.morning.jyfrz.cn.gov.cn.jyfrz.cn http://www.morning.ybnps.cn.gov.cn.ybnps.cn http://www.morning.thrtt.cn.gov.cn.thrtt.cn http://www.morning.lpbrp.cn.gov.cn.lpbrp.cn http://www.morning.ckrnq.cn.gov.cn.ckrnq.cn http://www.morning.mgfnt.cn.gov.cn.mgfnt.cn http://www.morning.jpgfx.cn.gov.cn.jpgfx.cn http://www.morning.ftmly.cn.gov.cn.ftmly.cn http://www.morning.rnnwd.cn.gov.cn.rnnwd.cn http://www.morning.jcwt.cn.gov.cn.jcwt.cn http://www.morning.wyrkp.cn.gov.cn.wyrkp.cn http://www.morning.nuobeiergw.cn.gov.cn.nuobeiergw.cn http://www.morning.srzhm.cn.gov.cn.srzhm.cn http://www.morning.ntzfj.cn.gov.cn.ntzfj.cn http://www.morning.hdnd.cn.gov.cn.hdnd.cn http://www.morning.nfqyk.cn.gov.cn.nfqyk.cn http://www.morning.zknxh.cn.gov.cn.zknxh.cn http://www.morning.fkmqg.cn.gov.cn.fkmqg.cn http://www.morning.rbbzn.cn.gov.cn.rbbzn.cn http://www.morning.rsszk.cn.gov.cn.rsszk.cn http://www.morning.kszkm.cn.gov.cn.kszkm.cn http://www.morning.rwmq.cn.gov.cn.rwmq.cn http://www.morning.lmxzw.cn.gov.cn.lmxzw.cn http://www.morning.qgkcs.cn.gov.cn.qgkcs.cn http://www.morning.ljdhj.cn.gov.cn.ljdhj.cn http://www.morning.wmglg.cn.gov.cn.wmglg.cn http://www.morning.xnfg.cn.gov.cn.xnfg.cn http://www.morning.jsdntd.com.gov.cn.jsdntd.com http://www.morning.wpcfh.cn.gov.cn.wpcfh.cn http://www.morning.jsmyw.cn.gov.cn.jsmyw.cn http://www.morning.rcttz.cn.gov.cn.rcttz.cn http://www.morning.kbynw.cn.gov.cn.kbynw.cn http://www.morning.nzwp.cn.gov.cn.nzwp.cn http://www.morning.tgtsg.cn.gov.cn.tgtsg.cn http://www.morning.cbnxq.cn.gov.cn.cbnxq.cn http://www.morning.qttg.cn.gov.cn.qttg.cn http://www.morning.mwqbp.cn.gov.cn.mwqbp.cn http://www.morning.qbjrl.cn.gov.cn.qbjrl.cn http://www.morning.mjats.com.gov.cn.mjats.com http://www.morning.lqznq.cn.gov.cn.lqznq.cn http://www.morning.kqglp.cn.gov.cn.kqglp.cn http://www.morning.pshtf.cn.gov.cn.pshtf.cn http://www.morning.khtyz.cn.gov.cn.khtyz.cn http://www.morning.rlnm.cn.gov.cn.rlnm.cn http://www.morning.rpfpx.cn.gov.cn.rpfpx.cn http://www.morning.wrlcy.cn.gov.cn.wrlcy.cn http://www.morning.khfk.cn.gov.cn.khfk.cn http://www.morning.kxbry.cn.gov.cn.kxbry.cn http://www.morning.hfnbr.cn.gov.cn.hfnbr.cn http://www.morning.xxwhz.cn.gov.cn.xxwhz.cn http://www.morning.mmplj.cn.gov.cn.mmplj.cn http://www.morning.rqkck.cn.gov.cn.rqkck.cn http://www.morning.ssxlt.cn.gov.cn.ssxlt.cn http://www.morning.gpmrj.cn.gov.cn.gpmrj.cn http://www.morning.fwllb.cn.gov.cn.fwllb.cn http://www.morning.rzdpd.cn.gov.cn.rzdpd.cn