Marco Pierucci
02/09/2023, 2:28 PMMarco Pierucci
02/09/2023, 2:28 PMFilip Wiesner
02/09/2023, 2:31 PMText(text = "Hello", color = MyTextColor)
If MyTextColor
is dependant on theme (dark/light), you can make it as extension value on material Colors object. Something like thisMarco Pierucci
02/09/2023, 2:32 PMFilip Wiesner
02/09/2023, 2:34 PMPedro Alberto
02/09/2023, 2:49 PMMarco Pierucci
02/09/2023, 2:53 PMPedro Alberto
02/09/2023, 2:54 PMPedro Alberto
02/09/2023, 2:54 PMPedro Alberto
02/09/2023, 2:54 PMPedro Alberto
02/09/2023, 2:55 PMPedro Alberto
02/09/2023, 2:55 PMMarco Pierucci
02/09/2023, 2:55 PMMarco Pierucci
02/09/2023, 2:56 PMPedro Alberto
02/09/2023, 2:56 PMPedro Alberto
02/09/2023, 2:57 PMMarco Pierucci
02/09/2023, 2:57 PMFilip Wiesner
02/09/2023, 2:58 PMPedro Alberto
02/09/2023, 2:58 PMPedro Alberto
02/09/2023, 2:59 PMPedro Alberto
02/09/2023, 3:00 PMMarco Pierucci
02/09/2023, 3:00 PMcolorOnSurface
has specific usage on the theme you can just force it to be the one deiser for a textMarco Pierucci
02/09/2023, 3:00 PMMarco Pierucci
02/09/2023, 3:00 PMPedro Alberto
02/09/2023, 3:01 PMPedro Alberto
02/09/2023, 3:01 PMPedro Alberto
02/09/2023, 3:01 PMMarco Pierucci
02/09/2023, 3:01 PMPedro Alberto
02/09/2023, 3:04 PMMarco Pierucci
02/09/2023, 3:19 PM@get:Composable
val MaterialColors.textTertiary: Color
get() = if (isLight) White else DoveGray
Marco Pierucci
02/09/2023, 3:19 PMLouis Pullen-Freilich [G]
02/09/2023, 6:51 PMmattinger
02/10/2023, 5:51 AMclass MyColors(val textTertiary: Color)
val LocalMyColors = staticCompositionLocalOf {
MyColors(textTertiary=...)
}
val MaterialTheme.myColors: MyColors
@Composable get() = LocalMyColors.current
This way, you can use a composition local provider. This lets you construct a variety of themes and color combinations other than just light/dark.
CompositionLocalProvider(
LocalMyColors provides ....
) {
MaterialTheme {
content()
}
}
mattinger
02/10/2023, 5:52 AM