{% setvar book_path %}/reference/androidx/_book.yaml{% endsetvar %} {% include "_shared/_reference-head-tags.html" %}

PainterModifierKt

public final class PainterModifierKt


Summary

Public methods

static final @NonNull Modifier
paint(
    @NonNull Modifier receiver,
    @NonNull Painter painter,
    boolean sizeToIntrinsics,
    @NonNull Alignment alignment,
    @NonNull ContentScale contentScale,
    float alpha,
    ColorFilter colorFilter
)

Paint the content using painter.

Public methods

paint

public static final @NonNull Modifier paint(
    @NonNull Modifier receiver,
    @NonNull Painter painter,
    boolean sizeToIntrinsics,
    @NonNull Alignment alignment,
    @NonNull ContentScale contentScale,
    float alpha,
    ColorFilter colorFilter
)

Paint the content using painter.

import androidx.compose.foundation.background
import androidx.compose.foundation.layout.Box
import androidx.compose.foundation.layout.padding
import androidx.compose.ui.Modifier
import androidx.compose.ui.draw.paint
import androidx.compose.ui.geometry.Size
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.graphics.drawscope.DrawScope
import androidx.compose.ui.graphics.painter.Painter
import androidx.compose.ui.unit.dp

class CustomPainter : Painter() {

    override val intrinsicSize: Size
        get() = Size(300.0f, 300.0f)

    override fun DrawScope.onDraw() {
        drawCircle(
            center = center,
            radius = size.minDimension / 2.0f,
            color = Color.Red
        )
    }
}

Box(
    modifier =
        Modifier.background(color = Color.Gray)
            .padding(30.dp)
            .background(color = Color.Yellow)
            .paint(CustomPainter())
) { /** intentionally empty **/ }
Parameters
boolean sizeToIntrinsics

true to size the element relative to Painter.intrinsicSize

@NonNull Alignment alignment

specifies alignment of the painter relative to content

@NonNull ContentScale contentScale

strategy for scaling painter if its size does not match the content size

float alpha

opacity of painter

ColorFilter colorFilter

optional ColorFilter to apply to painter