Я пытаюсь добиться темного режима в своем приложении iOS, используя SwiftUI: простой тест - изменить цвет фона.
Я настроил свой набор цветов, как показано ниже:
ContentView.swift:
import SwiftUI
struct ContentView : View {
@EnvironmentObject var session: SessionStore
func getUser () {
session.listen()
}
var body: some View {
Group {
if (session.session != nil) {
VStack {
WelcomeView()
.background(Color("bg"))
.edgesIgnoringSafeArea(.all)
}
} else {
VStack {
SigninView().transition(.move(edge: .bottom))
}.frame(maxHeight: .infinity)
.background(Color("bg"))
.edgesIgnoringSafeArea(.all)
}
}.animation(.spring())
.onAppear(perform: getUser)
}
}
Это не работает. Однако при форсировании темного режима с помощью .colorScheme(.dark)
после .onAppear
- это работает.
При отладке с помощью @Environment (\.colorScheme) var colorScheme:ColorScheme
возвращается light , даже если для моего iPhone установлено значение Dark Mode.
Я что-то пропустил?