SwiftUI: темный режим не обнаружен при тестировании на устройстве - PullRequest
0 голосов
/ 21 января 2020

Я пытаюсь добиться темного режима в своем приложении iOS, используя SwiftUI: простой тест - изменить цвет фона.

Я настроил свой набор цветов, как показано ниже: Colour Set in Assets

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.

Я что-то пропустил?

1 Ответ

0 голосов
/ 21 января 2020

Я понял это. Оказывается, Стиль интерфейса пользователя был установлен на light в моем файле Info.plist - просто удалите его.

User Interface Style

...