在imageVIew显示图片的时候一般是使用
android:scaleType="centerCrop"
来让图片不被变形显示。但是如果现在用Glide来加载图片并给它转化出一个圆角
.transform(new GlideRoundTransform(getContext(), 2))
就会发现,在第一次加载图片的时候是有圆角的,但是第二次加载缓存图片的时候,就会按照ImageView的scapeType来,就没有圆角了。这时候:
1、ImageView就直接设为FitXY,牺牲一下图片的展示效果当保留UI给出的圆角
2、就得探索一下Glide的转换部分来完整实现效果了。
解决
Glide提供转换的方法是可以加载多重转换的:
所以在这里我们可以试一下把图片的ScaleType模式统一在这个修改。
Glide.with(getContext())
.load(data.getThumb_image_url())
.placeholder(R.drawable.list_holder)
.error(R.drawable.list_holder)
.transform(new CenterCrop(getContext()), new GlideRoundTransform(getContext(), 2))
.into(pic);
利用多重转换就能解决这个问题了。