ViewOutlineProvider 是在 Android5.0添加的新 API,主要作用就是处理 View 的轮廓
我是在Banner轮播中遇到了这个问题,在图片轮播至下一张图片的时候,下一张图会先显示直角,然后在显示圆角。
具体实现代码如下:
banner.outlineProvider = object : ViewOutlineProvider() {
override fun getOutline(view: View, outline: Outline) {
outline.setRoundRect(0, 0, view.width, view.height, 50f)
}
}
其中在Banner加载图片的时候也是做了图片的弧度处理;
Glide.with(holder?.imageView!!.context)
.load(data)
.placeholder(R.drawable.icon_project_default_graph)
.apply(
RequestOptions().transform(
CenterCrop(), RoundedCornersTransform(
holder?.imageView!!.context, 50f,
)
)
).into(holder.imageView)
其中进行了自定义RoundedCornersTransform来设置Glide加载图片的圆角问题;
本文介绍了在Android开发中遇到的一个问题:在Banner轮播图中,图片在切换时出现直角然后再显示为圆角。通过使用ViewOutlineProvider和自定义的RoundedCornersTransform解决这一问题。示例代码展示了如何设置View的轮廓为圆角以及Glide加载图片时应用圆角效果的方法。

1254

被折叠的 条评论
为什么被折叠?



