ios - 在 iOS8 上,以横向模式显示我的应用程序会隐藏状态栏,但在 iOS 7 上,状态栏会同时显示在两个方向上

标签 ios objective-c orientation ios8

我希望状态栏在 iOS 8 中以两个方向显示;它在 iOS 7 中正确显示。

navigationController.isNavigationBarHidden 返回 NO。

为什么 iOS 8 会这样做?

最佳答案

试试这个

didRotateFromInterfaceOrientation

中添加以下代码
[[UIApplication sharedApplication] setStatusBarHidden:NO withAnimation:UIStatusBarAnimationNone];

编辑
无需在所有 View Controller 中编写代码
plist 中将 View controller-based status bar appearance 设置为 NO 并添加以下代码 Root View Controller 的 viewDidLoad

[[UIApplication sharedApplication] setStatusBarHidden:YES withAnimation:UIStatusBarAnimationNone];
[[UIApplication sharedApplication] setStatusBarHidden:NO withAnimation:UIStatusBarAnimationNone];

演示项目
https://www.dropbox.com/s/uumneidk4wom5md/demoStatusBar.zip?dl=0

关于ios - 在 iOS8 上,以横向模式显示我的应用程序会隐藏状态栏,但在 iOS 7 上,状态栏会同时显示在两个方向上,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24329503/

相关文章:

ios - 如何在自定义 UIView 中从 ViewController 传递数据

iphone - 如何为可拉伸(stretch)的 UIImage 着色

iOS8 方向 : supportedInterfaceOrientations called but no orientation change

ios - 使用 RxSwift 的 collectionView 不显示任何项目

iphone - iOs 5 Safari 新特性 "reader",开发者如何使用?

objective-c - objective c 将一个对象设置为一个未知的类

android - 如何处理在 VirtualBox 上的 android-x86 中强制屏幕方向的应用程序?

uitabbarcontroller - 禁用一个 UITabbar 项目的旋转

ios - CAShapeLayer 奇怪的动画行为

ios - 关闭的执行顺序