它不是半圆,它是弧形。
f2uvfpb91#
直接在XML中设计一个弧并不是那么简单,我可能会使用如下的自定义视图来完成:
import android.graphics.Canvas import android.graphics.Paint import android.graphics.Rect import android.graphics.RectF import android.graphics.drawable.ShapeDrawable class ArcShape( private val color: Int, private val startAngle: Float, private val sweepAngle: Float ) : ShapeDrawable() { private val rectF: RectF = RectF() private val shapePaint: Paint = Paint(Paint.ANTI_ALIAS_FLAG) init { shapePaint.color = color shapePaint.style = Paint.Style.STROKE shapePaint.strokeWidth = 5f } override fun draw( canvas: Canvas ) { canvas.drawArc(rectF, startAngle, sweepAngle, false, shapePaint) } override fun onBoundsChange(bounds: Rect) { super.onBoundsChange(bounds) rectF.set(bounds) } }
画布更灵活,可以让你设计任何你想要的!你也可以用Jetpack作曲!
1条答案
按热度按时间f2uvfpb91#
直接在XML中设计一个弧并不是那么简单,我可能会使用如下的自定义视图来完成:
画布更灵活,可以让你设计任何你想要的!你也可以用Jetpack作曲!