1、Appdelegate
// 当前statusBar使用的样式
var statusBarStyle: UIStatusBarStyle = .default
2、基类控制器
class BMViewController : UIViewController {
// 重现statusBar相关方法
override var preferredStatusBarStyle: UIStatusBarStyle {
return appDelegate.statusBarStyle
}
override func viewDidLoad() {
super.viewDidLoad()
changeSystemDark()
}
func changeStyle(dark:Bool) {
if dark {
appDelegate.statusBarStyle = .lightContent
} else {
appDelegate.statusBarStyle = .default
}
setNeedsStatusBarAppearanceUpdate()
}
}