鸿蒙三方图片加载库Coil使用指南 精华
wx60fa766eb1efb
发布于 2021-7-23 16:13
浏览
1收藏
一、Coil库的使用
1.远程依赖使用
在gradle 到导入coil库,如下
implementation ‘com.gitee.baijuncheng-open-source:coil:1.0.0’
2.本地依赖
下载源码后把coil-base模块或者把源码运行后生成的har包导入到工程中,本地导入的优势是可以根据自己的需求改动源码逻辑。
二、使用方法
1.coil可用来加载本地图片和网络图片,示例如下:
//加载网络图片
Coil.Load(image,"https://www.example.com/image.jpg",ability)
//加载本地图片
Coil.Load(image,ResourceTable.Media_gif,ability)
效果:
2.添加图片效果
coil可以为图片添加模糊,圆形,圆角和黑白效果
添加图片效果需要使用ImageRequest来添加,使用示例:
ImageRequest.Builder builder= new ImageRequest.Builder(urlStrs[0]);
builder.addTransform(new CircleCropTransformation());
Coil.load(image, builder.build(), getAbility());
上面代码使用的是圆形效果,也可以通过BlurTransformation、RoundedCornersTransformation、GrayscaleTransformation,其中BlurTransformation和RoundedCornersTransformation新建对象时都需要传入参数,分别是模糊度和圆角半径。
效果如下:
效果是可以加载多种的,比如你可让图片是圆形和模糊的效果;圆角和圆形效果是会冲突的,如果同时添加了圆角和圆形效,就只会显示圆形效果。
也可以添加默认占位图和加载失败后的占位图,示例:
ImageRequest.Builder builder1 = new ImageRequest.Builder(urlStrs[0]);
builder1.addTransform(new CircleCropTransformation())
.placeholder(ResourceTable.Media_load)
.error(ResourceTable.Media_err);
Coil.load(image, builder1.build(), getAbility());
代码中.placeholder是占位图,.error是加载失败后的占位图。
分类
标签
赞
4
收藏 1
回复
Coroutine Image Loader,最喜欢的一个图片库
coil有没有 下载图片到本地的功能