我正在尝试在 Jetpack Compose 中为 Desktop(非移动设备)制作一个非常基本的窗口,但我在更改窗口的颜色时遇到了一些困难。我看过一些教程和示例,但也许我不太明白颜色主题是如何正确实现的。
我写的代码应该创建一个深色背景的窗口,但是程序运行时的窗口是白色的。
请提供有关我做错了什么的任何见解。
import androidx.compose.desktop.*
import androidx.compose.material.*
import androidx.compose.ui.unit.*
fun main() = Window(
title = "Window",
resizable = false,
size = IntSize(1200, 800),
) {
MaterialTheme(colors = darkColors()) {
}
}
macOS 大苏尔
IntelliJ2021.2
Jetpack Compose0.4.0
MaterialTheme
仅为容器内的所有视图提供颜色,它不会创建或渲染视图。
大多数材质组件将使用这些颜色作为默认值,但您也可以在视图中使用这些颜色,例如,
MaterialTheme.colors.background
。
您需要在里面放入一些视图,调整其大小并应用一些背景颜色,例如:
MaterialTheme(colors = darkColors()) {
Box(Modifier.fillMaxSize().background(MaterialTheme.colors.background))
}
您可以使用Scaffold来查看更改。 在你的例子中:
...
MaterialTheme(colors = darkColors()) {
Scaffold {
// your content
}
}
...
您可以阅读以下内容: https://developer.android.com/jetpack/compose/layouts/material 或在这里: https://metanit.com/kotlin/jetpack/4.11.php