Glide加载圆形图片(新版本4.0.0-RC1)

今天封装图片加载框架时,想使用Glide加载圆形图片,发现有几个坑,所以记录一下:

Glide的使用方法,这个应该很熟悉了,如下:

ImageView image;
String url = "图片url地址";
Glide.with(image.getContext()).load(url).into(image);

但是我们加载圆形图片或者给图片设置参数时,需要用到RequestOptions对象,由RequestManager管理。RequestOptions有默认的构造方法和多种静态构造方法,

比如圆形图片我们可以使用

RequestOptions requestOptions = RequestOptions.circleCropTransform();
返回对象本身

当我们需要自己对bitmap图片进行自定义时,我们需要继承BitmapTransformation这个类,这是一个抽象类,实现了Transformation接口。

具体实现可参考GlideAPI里面的CircleCrop类。这是一个实现了圆形图片的类。所以我们加载圆形图片时,可以使用

Glide.with(this).load(url).apply(RequestOptions.bitmapTransform(new CircleCrop())).into(imageView);
或者
RequestOptions requestOptions = RequestOptions.circleCropTransform();
Glide.with(this).load(url).apply(requestOptions).into(imageView);
需要注意不要和centerInside等图片属性冲突。

你可能感兴趣的:(移动应用)