不少同学在开发过程中可能会遇到这种情况,有些页面可以调用preferredStatusBarStyle方法改变状态栏样式,有些则不可以。其根本原因是:
当视UIViewController处于UINavigationController中时,状态栏将由导航栏进行管理,所以此时在视图控制器中调用preferredStatusBarStyle时不再生效,需要通过UINavigationBar.barStyle属性来设置。另外,有一种情况,当视图控制器处于导航控制器中,如果导航栏被隐藏,此时可以通过调用preferredStatusBarStyle来设置状态栏样式。
self.navigationController.navigationBar.barStyle = UIBarStyleBlack;
self.navigationController.navigationBar.barStyle = UIBarStyleDefault;
在iOS开发中,遇到某些页面不能通过`preferredStatusBarStyle`改变状态栏样式的情况,主要是因为这些视图控制器处于`UINavigationController`中,状态栏由导航栏管理。此时需通过设置`UINavigationBar.barStyle`来调整。如果导航栏被隐藏,则可以使用`preferredStatusBarStyle`。示例代码展示了如何设置导航栏风格为黑色和默认样式。
1214

被折叠的 条评论
为什么被折叠?



