嗨,我有一个问题与搜索栏.我使用这个功能来切换我的应用程序之间的黑暗和光明模式。
func changeStyle(dark: Bool){
let window = UIApplication.shared.windows.first { $0.isKeyWindow }
if dark == true {
window?.overrideUserInterfaceStyle = .dark
}else{
window?.overrideUserInterfaceStyle = .light
}
}
所有的工作都正常,但只有搜索栏有问题。当我切换到亮模式时,搜索栏仍然处于黑暗模式。请看下图我如何解决这个问题?
试着监听变化,然后使用以下方法手动设置 traitCollectionDidChange
:
override func traitCollectionDidChange(_ previousTraitCollection: UITraitCollection?) {
super.traitCollectionDidChange(previousTraitCollection)
if #available(iOS 13.0, *) {
if traitCollection.hasDifferentColorAppearance(comparedTo: previousTraitCollection) {
//Set colours here
}
}