struct ContentView_Previews : PreviewProvider {
static var previews: some View {
ContentView().environment(\.colorScheme, .dark)
}
}
我正在使用上面的代码在演示项目上实现暗模式,但无法正常工作。
任何帮助或见识都将不胜感激。
答案 0 :(得分:6)
它修复了预览,但没有更改我的代码
import SwiftUI
struct ContentView: View {
var body: some View {
Text("Hello, World!")
}
}
struct ContentView_Previews: PreviewProvider {
static var previews: some View {
Group {
ZStack {
Color.black.edgesIgnoringSafeArea(.all)
ContentView().environment(\.colorScheme, .dark)
}
ContentView().environment(\.colorScheme, .light)
}
}
}
答案 1 :(得分:4)
这似乎是Xcode 11.0 beta中的错误。暂时的解决方法是将您的内容包装在NavigationView
中。
例如,以下代码在黑暗模式预览中不会生效:
var body: some View {
Text("Hello World")
}
但是将内容包装在NavigationView
中之后,暗模式预览将按预期方式工作:
var body: some View {
NavigationView {
Text("Hello World")
}
}
结果:
答案 2 :(得分:2)
黑暗模式在预览中只能工作一半,只是忘记绘制背景。
以下解决方法可让您在预览功能中将function keyPressLien(event, phone) {
// drop the line: var phone = ...
// rest is the same!
添加到.darkModeFix()
中。您可以选择添加ContentView()
作为关闭暗模式的参数。
false
只需在项目中的某些位置添加以下内容:
struct ContentView_Previews : PreviewProvider {
static var previews: some View {
Group {
ContentView()
.darkModeFix()
}
}
}
答案 3 :(得分:1)