【发布时间】:2022-11-01 20:31:56
【问题描述】:
我正在学习 android jetpack compose,并注意到应用程序中有一个奇怪的行为。如果我设置轻主题背景颜色为白色的.我将黑暗主题变量设置为假,我也切换了我的系统颜色模式为暗.然后就会不显示白色.
我已经尝试了所有可能的方法。如果我放置白色以外的颜色,那么它会像魅力一样起作用。
class MainActivity : ComponentActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContent {
JetPackComposeDeepDiveTheme(
false, {
// A surface container using the 'background' color from the theme
Surface(modifier = Modifier.fillMaxSize(), color = MaterialTheme.colors.background) {
Greeting("Android")
}
})
}
}
}
@Composable
fun Greeting(name: String) {
Text(text = "Hello $name!")
}
在 color.kt 中,我添加了这两种颜色。其余的整个项目是一个入门项目。
val DarkBackground = Color(0xFF000000)
val LightBackground = Color(0XFFFFFFFF)
我在 theme.kt 中使用这些颜色
private val DarkColorPalette = darkColors(
primary = Purple200,
primaryVariant = Purple700,
secondary = Teal200,
background = DarkBackground,
)
private val LightColorPalette = lightColors(
primary = Purple500,
primaryVariant = Purple700,
secondary = Teal200,
background = LightBackground,
)
@Composable
fun JetPackComposeDeepDiveTheme(
darkTheme: Boolean = isSystemInDarkTheme(),
content: @Composable () -> Unit
) {
val colors = if (darkTheme) {
DarkColorPalette
} else {
LightColorPalette
}
MaterialTheme(
colors = colors,
typography = Typography,
shapes = Shapes,
content = content
)
}
我不知道这是一个错误还是我做错了什么。如果我以正确的方式做事,请纠正我。如果它是一个 android 错误,那么我可以在哪里报告这个?
【问题讨论】:
标签: android android-jetpack-compose android-jetpack