Chr*_*son 3 statusbar ios swift3
我发现很难以编程方式更改状态栏样式.
我看到如何使用(在ViewController.swift中)的组合为每个ViewController静态设置它:
override var preferredStatusBarStyle: UIStatusBarStyle {
return UIStatusBarStyle.default
}
Run Code Online (Sandbox Code Playgroud)
和(在info.plist中):
View controller-based status bar appearance = YES
Run Code Online (Sandbox Code Playgroud)
...
我想随时改变它!
小智 7
迅捷3
1.更改info.plist行查看基于控制器的状态栏外观并将其设置为NO
2.Change在appDelegate.swift在didFinishLaunchingWithOptions
UIApplication.shared.statusBarStyle = .lightContent
Run Code Online (Sandbox Code Playgroud)
经过大量的挖掘后找到了答案!
设置(在info.plist中):
View controller-based status bar appearance = NO
Run Code Online (Sandbox Code Playgroud)
并删除(在ViewController.swift中):
override var preferredStatusBarStyle: UIStatusBarStyle {
return UIStatusBarStyle.default
}
Run Code Online (Sandbox Code Playgroud)
...
现在你可以使用(在ViewController.swift中):
UIApplication.shared.setStatusBarStyle(UIStatusBarStyle.lightContent, animated: true)
Run Code Online (Sandbox Code Playgroud)
并且,要初始为每个ViewController设置样式,请使用viewDidAppear:
override func viewDidAppear(_ animated: Bool) {
UIApplication.shared.setStatusBarStyle(UIStatusBarStyle.lightContent, animated: false)
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4184 次 |
| 最近记录: |