Andy Himberger
02/28/2023, 7:06 AMAndy Himberger
02/28/2023, 7:12 AMinternal object EmptyPainter : Painter() {
    override val intrinsicSize: Size get() = Size.Unspecified
    override fun DrawScope.onDraw() {}
}
@Composable
fun rememberMyPainter(): Painter? {
    val context = LocalContext.current
    val painter = remember { mutableStateOf<Painter?>(null) }
    if (painter.value == null) {
        DisposableEffect(Unit) {
            val bitmap = BitmapFactory.decodeResource(context.resources, R.drawable.num1)
            painter.value = BitmapPainter(image = bitmap.asImageBitmap())
            onDispose {}
        }
    }
    return painter.value
}
@Composable
fun TestDelayedPainter() {
    val painter = rememberMyPainter()
    Image(
        painter = painter ?: EmptyPainter,
        contentDescription = null,
    )
}Andy Himberger
03/01/2023, 5:14 AM