我们都知道手机加载图片是一个耗时又耗内存的事情,但因为效果我们又不得不加载各种各样的图片。但自己写的图片加载与缓存不仅代码繁琐,还会因为考虑不全造成各种各样未知的bug,所以越来越多的人利用第三方的框架来加载图片,而Glide在这方面可谓说独占鳌头。
选择Glide理由:
1.集成简单,一行代码依赖完成
2.使用简单,一行代码调用完成
3.能加载各种类型的图片,不管是静态图还是gif图
4.优秀的图片缓存技术,Glide运用了内存缓存(默认开启)和磁盘缓存两种缓存技术。
…
基于上面的优点,越来越多的人使用它,本文就教大家如何利用Glide去加载显示圆角图。按照国际惯例,先上效果图:
首先不用多说,添加依赖:
implementation 'com.github.bumptech.glide:glide:3.7.0'
接着因为是加载网络图,添加网络权限:
<uses-permission android:name="android.permission.INTERNET"/>
接着就是重头戏了,自定义GlideRoundImage来继承BitmapTransformation来对我们的图片进行处理:
public class GlideRoundImage extends BitmapTransformation {
private static float radius = 0f;
public GlideRoundImage(Context context) {
this(context, 4);
}
public GlideRoundImage(Context context, int dp) {
super(context);
radius = Resources.getSystem().getDisplayMetrics(