需要如下步骤
1.设置info.plist文件中View controller-based status bar appearance 为 YES
2. 重写控制器方法
override var preferredStatusBarStyle: UIStatusBarStyle {
return .default // default黑色字 black白色字
}
如果不起作用请接着往下看
当你的控制器里包含在UINavgationController时上面的preferredStatusBarStyle方法是不会执行的,解决办法:
1. 隐藏导航栏 preferredStatusBarStyle 会执行
2. 直接设置self.navigationBar.barStyle = .black 你可能需要在进去和离开方法中控制你要的效果
3. 手动触发preferredStatusBarStyle方法
override func viewDidAppear(_ animated: Bool) {
super.viewDidAppear(animated)
//必须放在 viewDidAppear: 方法里面才起效果(自动调用 preferredStatusBarStyle)
setNeedsStatusBarAppearanceUpdate()
}