2

我已经尝试了所有我能想到/找到的方法来隐藏 iOS 7 上的状态栏,但在启动后它会出现:

//in viewDidLoad
    [[UIApplication sharedApplication] setStatusBarHidden:YES withAnimation:UIStatusBarAnimationFade];

//in the main view controller
- (BOOL)prefersStatusBarHidden
{
    return YES;
}

我还在 info.plist 中将“状态栏最初隐藏”和“查看基于控制器的状态栏外观”设置为“是”。

奇怪的是,在另一个控制器出现后,状态栏会隐藏起来,比如选择器或键盘。

4

2 回答 2

2

尝试向 info.plist 添加一个新值:

基于视图控制器的状态栏外观 - 否

于 2013-11-01T11:39:11.003 回答
1

如果您不希望视图控制器参与状态栏的样式和可见性,请将“基于视图控制器的状态栏外观”行添加到您的行info.plist并将其设置为NO. 默认情况下,在 iOS 7 中,视图控制器可以通过覆盖该prefersStatusBarHidden方法来参与状态栏的出现过程。您还可以通过调用通知 UIKit 您的状态栏可见性更改[self setNeedsStatusBarAppearanceUpdate]

如果仍然无法正常工作,请发布更多代码以更全面地了解您的问题。也许原因在其他地方。

于 2013-11-01T11:53:50.030 回答