在我的 Assets 中,我为浅色和深色外观声明了两种变体的主题颜色,效果很好。但是,我在应用程序中有一个特定位置,无论是否启用暗模式,我都需要使用颜色的浅色变体。除了将相同的颜色声明为只有一个变体的单独颜色之外,还有其他方法可以在代码中获取该颜色吗?
最佳答案
在 SwiftUI 中,如果需要为某些 subview 使用轻量级变体,强制指定 .colorScheme
就足够了。为此,如下所示
颜色变体:
演示:
var body: some View {
VStack {
Rectangle().fill(Color("testColor"))
.frame(width: 100, height: 100)
.environment(\.colorScheme, .light) // << force light
}
.frame(width: 300, height: 300)
.background(Color("testColor")) // << system appearance
}
关于ios - 获取 Assets 中声明的颜色的浅色或深色变体,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60709874/