主要观点总结
本文介绍了在Android中实现图片圆角矩形和圆形效果的六种常见方法,包括使用ViewOutlineProvider、Glide图片加载库、Canvas.clipPath()自定义ImageView、CardView、BitmapShader和RoundedBitmapDrawable等方式。每种方式都有其使用场景和特点,推荐优先使用系统已经实现好的方式,如ViewOutlineProvider或优秀的Glide图片加载库。
关键观点总结
关键观点1: 方式一:使用ViewOutlineProvider设置圆角矩形或圆形效果
通过ViewOutlineProvider来定义视图的轮廓,实现圆角矩形和圆形效果。
关键观点2: 方式二:使用Glide图片加载库实现图片圆角处理
通过Glide的RequestOptions轻松实现图片的圆角处理。
关键观点3: 方式三:通过Canvas.clipPath()自定义ImageView实现圆角矩形和圆形图片
创建一个自定义的ImageView,通过重写onDraw()方法,使用Canvas.clipPath()实现图片的圆角矩形和圆形效果。
关键观点4: 方式四:使用CardView实现圆角效果
通过CardView的app:cardCornerRadius属性,方便实现圆角效果。
关键观点5: 方式五:使用BitmapShader实现自定义圆角和圆形图片
通过BitmapShader着色器实现自定义的圆角和圆形图片。
关键观点6: 方式六:使用RoundedBitmapDrawable处理圆形或圆角矩形的图片显示
使用RoundedBitmapDrawable工具类处理圆形或圆角矩形的图片显示。
文章预览
本文作者: mqcoder ,原文发布于: 代码说 。 在项目开发中,为了让图片显示得更加美观,通常 UI 会设计成圆角矩形或圆形效果。本文将介绍几种常见的实现方式,并提供对应的代码示例。 1 方式一:ViewOutlineProvider可以设置圆角矩形、椭圆、圆形等 ViewOutlineProvider 是 Android 5.0 引入的一个类,用来定义视图的轮廓(outline)。可以通过它来实现圆角矩形、椭圆、圆形等效果。 //设置成扩展方法 fun View. clipToRoundView (type: Int = RoundImgView.SHAPE_ROUND_RECT) { if (Build.VERSION.SDK_INT >= 21 ) { outlineProvider = object : ViewOutlineProvider() { override fun getOutline (view: View ?, outline: Outline ?) { if (view == null ) return if (type == RoundImgView.SHAPE_ROUND_RECT) {
………………………………