Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/xslt/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios TraitCollection没有改变奇怪的行为_Ios_Swift_Ios13 - Fatal编程技术网

Ios TraitCollection没有改变奇怪的行为

Ios TraitCollection没有改变奇怪的行为,ios,swift,ios13,Ios,Swift,Ios13,iOS 13应用程序只是进入后台,不改变模式(亮/暗),但会调用“打印”功能。是否有可能确定模式真正改变的时刻 谢谢。我自己也观察到了这一点。 然而,用户界面一进入后台就会切换,它会立即切换回来。 我想你应该简单地跟随这些变化,并根据需要做出反应。 您可以通过检查traitCollection.userInterfaceStyle 例如: let isDark=traitCollection.userInterfaceStyle=.dark注意,检查UIApplication.shared.ap

iOS 13应用程序只是进入后台,不改变模式(亮/暗),但会调用“打印”功能。是否有可能确定模式真正改变的时刻


谢谢。

我自己也观察到了这一点。
然而,用户界面一进入后台就会切换,它会立即切换回来。
我想你应该简单地跟随这些变化,并根据需要做出反应。
您可以通过检查
traitCollection.userInterfaceStyle

例如:

let isDark=traitCollection.userInterfaceStyle=.dark

注意,检查
UIApplication.shared.applicationState=.active
可能有助于避免问题。不过请注意,如果界面样式在应用程序未激活时发生更改,则需要确保在应用程序恢复激活时正确更新界面。
override func traitCollectionDidChange(_ previousTraitCollection: UITraitCollection?) {
    super.traitCollectionDidChange(previousTraitCollection)
    if traitCollection.hasDifferentColorAppearance(comparedTo: previousTraitCollection) {
        print("changed")
    }
}