我试图学习如何在Jetpack compose中设置自定义应用程序主题,但我正在努力设置primaryVariant颜色的颜色,当我创建自定义调色板时,该颜色似乎不会被覆盖。
private val MyLightColorPalette = lightColors(
primary = Green,
primaryVariant = Grey,
onPrimary = Color.White,
secondary = Green,
secondaryVariant = Grey,
onSecondary = Color.White,
error = DarkGrey,
)
这是我的调色板,但它使用紫色而不是绿色。有人知道为什么它仍然使用默认的紫色吗?
下面是代码的其余部分:
@Composable
fun MyAppTheme(darkTheme: Boolean = isSystemInDarkTheme(), content: @Composable () -> Unit) {
val colors = if (darkTheme) {
MyDarkColorPalette
} else {
MyLightColorPalette
}
MaterialTheme(
colors = colors,
typography = Typography,
shapes = Shapes,
content = content
)
}
@AndroidEntryPoint
class MainActivity : ComponentActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContent {
MyAppTheme {
Scaffold() {
TopBar()
}
}
}
}
}
我使用的Compose版本是1.0.4
发布于 2021-10-19 05:48:18
如果要求只是将整个应用程序中的状态栏颜色更改为纯色,这也可以在没有伴奏的情况下工作。
将此代码添加到活动主题XML代码中。
<item name="android:statusBarColor" tools:targetApi="l">@color/status_bar</item>
https://stackoverflow.com/questions/69627720
复制相似问题