Рисовать с холстом - PullRequest
       15

Рисовать с холстом

0 голосов
/ 25 апреля 2019

Как использовать холст для рисования выделенного поля прозрачного цвета на синем фоне?

My header

В официальной документации я нахожу что-то вроде этого . Но остается вопрос, как это реализовать.

Также, например, я пытался нарисовать линию:

private fun someFun(canvas: Canvas, parent: RecyclerView) {
    val radius: Float = parent.context.resources.getDimension(R.dimen.dimen_12)
    val paint = Paint()
    paint.color = ContextCompat.getColor(parent.context, R.color.primary)
    paint.style = Paint.Style.FILL

    val path = Path()
    path.moveTo(0f, 0f)
    path.lineTo(0f, radius)
    path.arcTo(RectF(0f, 0f, radius * 2, radius * 2), 270f, -90f)
    path.close()
    canvas.drawPath(path, paint)
}

И получить что-то вроде этого: enter image description here

1 Ответ

0 голосов
/ 26 апреля 2019

Решили следующим образом:

 private fun drawRoundedCorners(canvas: Canvas, parent: RecyclerView) {
    val radius: Float = parent.context.resources.getDimension(R.dimen.dimen_12)
    val paint = Paint()
    paint.color = ContextCompat.getColor(parent.context, R.color.primary)
    paint.style = Paint.Style.FILL

    val path = Path()
    path.moveTo(0f, 0f)
    path.lineTo(150f, 0f)
    path.arcTo(RectF(0f, 0f, radius * 2, radius * 2), 270f, -90f)

    path.moveTo(parent.width.toFloat(), 0f)
    path.lineTo(parent.width.toFloat(), 0f)
    path.arcTo(RectF(parent.width.toFloat() - radius * 2, 0f, parent.width.toFloat(),
            radius * 2), 270f, 90f)
    path.close()
    canvas.drawPath(path, paint)
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...