Определить динамический c Цвет программно - PullRequest
1 голос
/ 29 февраля 2020

Как мы можем создать новую Color программно в соответствии с системной темой (темный / светлый режим). Что я могу сделать, это следующее, но есть ли способ заставить его работать непосредственно внутри расширения до Color?

extension UIColor {
    static let slightlyOff = UIColor { (traitCollection: UITraitCollection) -> UIColor in
        switch traitCollection.userInterfaceStyle {
        case .light: return UIColor.red
        case .dark: return UIColor.yellow
        default: return UIColor.green
        }
    }
}

extension Color{
    static let slightlyOff = Color(UIColor.slightlyOff)
}

struct ContentView: View {
    @EnvironmentObject var state:State

    var body:some View {
        Text("Dynamic Color").foregroundColor(Color.slightlyOff)
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...