Android通过OutlineProvider + setEl

2023-12-24  本文已影响0人  小智在不在
val view = findViewById<View>(R.id.temp_text_view)
// 圆角尺寸
val px96 = 96
// outlineProvider具体用法可以参见文末链接
view.outlineProvider = object : ViewOutlineProvider() {
    override fun getOutline(view: View, outline: Outline) {
        // 在这里将该View裁切成左边圆角,右边直角,按实际需求定制
        outline.setRoundRect(0, 0, view.width + px96 , view.height, px96.toFloat())
    }
}
// 开启裁切
clipToOutline = true
// 设置海拔,具体用法见Api
view.elevation = elevation
if (Build.VERSION.SDK_INT >= 28) {
    // Api 28 以上设置阴影颜色
    view.outlineSpotShadowColor = Color.BLUE
}

Android通过Drawable和ViewOutlineProvider方式实现圆角

上一篇 下一篇

猜你喜欢

热点阅读