Sobes.tech
Junior — Middle
72

Как реализовать пользовательский компонент отображения в Android?

Ответ от нейросети

sobes.tech AI

Для создания пользовательского компонента отображения в Android нужно создать класс, который наследует View или один из его подклассов (например, ViewGroup, если нужен контейнер). В этом классе переопределяют методы, отвечающие за отрисовку и обработку событий, например, onDraw(Canvas canvas) для рисования и onMeasure(int widthMeasureSpec, int heightMeasureSpec) для задания размеров.

Пример простого пользовательского View, рисующего круг:

class CircleView(context: Context, attrs: AttributeSet?) : View(context, attrs) {
    private val paint = Paint().apply {
        color = Color.RED
        isAntiAlias = true
    }

    override fun onDraw(canvas: Canvas) {
        super.onDraw(canvas)
        val radius = Math.min(width, height) / 2f
        canvas.drawCircle(width / 2f, height / 2f, radius, paint)
    }
}

Такой компонент можно использовать в XML или создавать программно. Для поддержки атрибутов можно добавить обработку в конструкторе с AttributeSet.