#android #canvas
Вопрос:
У меня есть Л Т Р Б позиции. Я хочу нарисовать закругленный прямоугольник. Вот мой код:
override fun onDraw(canvas: Canvas?) {
super.onDraw(canvas)
val curvePath = Path().apply {
moveTo(left.x, left.y)
lineTo(bottom.x, bottom.y)
arcTo(bottom.x, right.y, right.x, bottom.y, 135f, 315f, false)
lineTo(top.x, top.y)
arcTo(left.x, top.y, top.x, left.y, 315f, 135f, false)
}
canvas?.drawPath(curvePath, paint)
}
Я не понимаю метод arcTo (), так как я могу нарисовать закругленный прямоугольник, подобный прикрепленному изображению (2 изогнутых контура-полукруг)
Ответ №1:
В Path есть метод addRoundRect, более простой, чем добавление частей по отдельности.
addRoundRect(float left, float top, float right, float bottom, float rx, float ry,Direction dir)