如何在android中使用canvas绘制一个环?

时间:2011-05-26 12:57:17

标签: android

有人可以建议我如何使用canvas方法绘制一个环。我可以使用canvas.drawCircle()绘制圆圈,但我应该如何感受它们之间的空间?

2 个答案:

答案 0 :(得分:18)

  1. 您可以使用粗刷绘制圆圈(使用setStrokeWidth)。
  2. 您可以绘制两个圆圈,一个在另一个圆圈内。一个填充'环'颜色,另一个(内部填充)屏幕'背景颜色'

答案 1 :(得分:0)

在科特林,您可以这样做:

  • 使用描边样式和init块定义您的绘画
class CustomView(context: Context, attrs: AttributeSet) : View(context, attrs) {

private var ringPaint: Paint
  init {
        ringPaint = Paint()
        ringPaint.color = R.color.RED // Your color here
        ringPaint.style = Paint.Style.STROKE // This is the important line
        ringPaint.strokeWidth = 20f // Your stroke width in pixels
  }

}
  • 使用drawCircleFunction(centerX,centerY,radius,paint)在onDraw方法中绘制圆
override fun draw(canvas: Canvas?) {
            super.draw(canvas)
            canvas?.drawCircle(width / 2.0f, height / 2.0f, (width - 10) / 2.0f, ringPaint)
        }