我想在呈现视图控制器时更改状态栏样式,并在从它返回时将其更改回来,这是我的代码:
In presented:
override func viewWillAppear(_ animated: Bool) {
UIApplication.shared.statusBarStyle = .lightContent
}
In presenting:
override func viewWillAppear(_ animated: Bool) {
UIApplication.shared.statusBarStyle = .default
}
My info.plist:
-
查看基于控制器的状态栏外观= NO
-
状态栏样式=默认值
动画似乎非常具有侵入性,我能够为变化制作动画吗?
1 回答
首先,您执行此操作:打开info.plist并将名为“View controller-based status bar appearance”的新密钥插入NO
并在任何viewController中更改statusBar颜色 .
像这样:UIApplication.sharedApplication() . statusBarStyle = .LightContent
如果你想改变viewController上的颜色,就像这样:
覆盖func viewWillDisappear(动画:Bool)
{super.viewWillDisappear(动画)
//当特定的viewController消失时,这将改变颜色 .
}