隐藏在iPad上运行的iPhone应用程序的状态栏

mik*_*ike 11 iphone statusbar ipad ios uistatusbar

我的iPhone应用程序要求始终隐藏状态栏.这通常很容易做到,如果我只在iPhone上运行应用程序,它就有效.但是,如果我在iPad上运行该应用程序,状态栏仍会显示在内容的顶部.那么,无论我的iPhone专用应用程序运行在哪个设备上,如何确保隐藏状态栏?我目前正在我的代码中执行以下操作:

为每个视图控制器调用此方法(我实际上在UIViewController上创建了一个类别,可以自动为任何VC实现此类,但它与在每个vc文件中编写它基本相同):

-(BOOL)prefersStatusBarHidden{
    return YES;
}
Run Code Online (Sandbox Code Playgroud)

我还在Info.plist中将"状态栏最初隐藏"设置为YES和"查看基于控制器的状态栏外观"为NO.我也试过检测正在使用和调用的设备

[UIApplication sharedApplication]setSetStatusBarHidden:YES]
Run Code Online (Sandbox Code Playgroud)

在AppDelegate,但也没有运气.所以,我相信我已经尝试过一个人们想要尝试的一切.

Dan*_*li3 10

这似乎是在iOS 7.1中引入的,并影响运行带有视网膜图形的iPhone应用程序的非视网膜iPad.

开发人员没有解决方案 我认为Apple必须修补这个......

问题设备:iPad 2 iPad Mini(非视网膜).

iOS 7.0中不存在问题,并且在发布其他解决方案的情况下,状态栏问题可以修复为7.0.

2014年9月更新 - iOS 8:

iOS 8修复了这个错误!!!!!