我刚刚把我的iPhone 5 iOS 7升级到四个测试版。现在,当我从Xcode 5在iPhone上运行我的应用程序时,状态栏没有隐藏,尽管它应该隐藏。

不工作:

[[UIApplication sharedApplication] setStatusBarHidden:YES withAnimation:UIStatusBarAnimationFade];

不工作:

[UIApplication sharedApplication].statusBarHidden = YES;

无法登录苹果开发者论坛


当前回答

-(BOOL)prefersStatusBarHidden
{
    return YES;
}

其他回答

Swift 2.0+ IOS 9

override func prefersStatusBarHidden() -> Bool {
return true
}

在plist中添加---- 基于视图控制器的状态栏外观 在每个viewController中写入 - (void) viewDidLayoutSubviews { CGRect viewBounds = self.view.bounds; CGFloat topBarOffset = 20.0; viewBounds.origin.y = -topBarOffset; self.view.bounds = viewBounds; [[UIApplication sharedApplication] setStatusBarStyle:UIStatusBarStyleLightContent] }

对于iOS 7中的状态栏问题,但目标应该是5.1及以上的应用程序

在Info Plist文件中为以下属性添加一行

属性名称:查看基于控制器的状态栏外观

取值范围:NO

唯一对我有用的是在你的plist中添加以下内容

<key>UIStatusBarHidden</key>
<true/>
<key>UIViewControllerBasedStatusBarAppearance</key>
<false/>
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
application.statusBarHidden = YES;
return YES;
}