traitCollectionDidChange 奇怪的行为
traitCollectionDidChange strange behavior
override func traitCollectionDidChange(_ previousTraitCollection: UITraitCollection?) {
super.traitCollectionDidChange(previousTraitCollection)
if traitCollection.hasDifferentColorAppearance(comparedTo: previousTraitCollection) {
print("changed")
}
}
iOS 13 应用程序只是在不更改模式 (light/dark) 的情况下进入后台,但调用了 "print" 函数。是否可以确定模式真正改变的时刻?
谢谢。
我自己也观察到了这一点。
一旦您进入后台,用户界面就会切换,但是 - 它会立即切换回来。
我想您应该简单地遵循更改并根据需要做出反应。
查看当前界面风格可以查看traitCollection.userInterfaceStyle
.
例如:
let isDark = traitCollection.userInterfaceStyle == .dark
override func traitCollectionDidChange(_ previousTraitCollection: UITraitCollection?) {
super.traitCollectionDidChange(previousTraitCollection)
if traitCollection.hasDifferentColorAppearance(comparedTo: previousTraitCollection) {
print("changed")
}
}
iOS 13 应用程序只是在不更改模式 (light/dark) 的情况下进入后台,但调用了 "print" 函数。是否可以确定模式真正改变的时刻?
谢谢。
我自己也观察到了这一点。
一旦您进入后台,用户界面就会切换,但是 - 它会立即切换回来。
我想您应该简单地遵循更改并根据需要做出反应。
查看当前界面风格可以查看traitCollection.userInterfaceStyle
.
例如:
let isDark = traitCollection.userInterfaceStyle == .dark