【问题标题】:Jetpack Compose Desktop – MaterialTheme.colors.background Not WorkingJetpack Compose 桌面 – MaterialTheme.colors.background 不工作
【发布时间】:2021-12-19 20:25:42
【问题描述】:

设置 MaterialTheme.colors

我正在尝试在 Jetpack Compose 中为 Desktop(非移动设备)制作一个非常基本的窗口,但在更改窗口颜色时遇到了一些困难。我看过一些教程和示例,但也许我不太了解如何正确实现颜色主题。
我编写的代码应该创建了一个深色背景的窗口,但程序运行时的窗口是白色的。
请提供任何关于我做错了什么的见解。

代码(Kotlin)

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()) {

    }
}

窗口

其他信息

ma​​cOS Big Sur
IntelliJ 2021.2
Jetpack Compose 0.4.0

【问题讨论】:

    标签: kotlin material-design android-jetpack-compose compose-desktop


    【解决方案1】:

    MaterialTheme 只为容器内的所有视图提供颜色,它不创建或渲染视图。

    大多数 Material 组件将使用这些颜色作为默认值,但您也可以在视图中使用这些颜色,例如 MaterialTheme.colors.background。

    你需要在里面放一些视图,调整它的大小并应用一些背景颜色,例如:

    MaterialTheme(colors = darkColors()) {
        Box(Modifier.fillMaxSize().background(MaterialTheme.colors.background))
    }
    

    【讨论】:

    • 问题依然存在,如何让窗口处于深色模式?我希望它以深灰色为主题的窗口背景。
    • @Chapz 目前好像还不支持,你可以create a feature request,或者现在根据this的方法定制一个。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2023-01-20
    • 2021-10-05
    • 2022-07-29
    • 1970-01-01
    • 2021-10-04
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多