即使UIStatusBarHidden为YES,如何防止iOS 5显示状态栏?

时间:2011-12-23 11:14:57

标签: iphone ios ipad statusbar

有些用户报告称iOS 5有时会显示状态栏。

在我的Info.plist中,UIStatusBarHidden键为YES,我从不在代码中使用状态栏。

我该怎么做才能解决这个问题?

5 个答案:

答案 0 :(得分:6)

Info.plist中的条目应足以隐藏它,但您可以尝试以编程方式执行此操作:

[[UIApplication sharedApplication] setStatusBarHidden:YES animated:NO];  

当您的应用启动时。

答案 1 :(得分:6)

我认为在iOS5中不推荐使用上述方法,我会改用它:

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

答案 2 :(得分:2)

找到了解决方案!

我确实在plist中设置了属性,但在将视图控制器推入导航堆栈或打开UIImagePickerController之后仍然可以看到状态栏: (我使用Xcode 4.2(SDK 5.0)和iOS 5.0.1)。

这里是(将代码放在每个View Controller中,你不需要状态栏可见):

设置self.wantsFullScreenLayout = YES; 在

- (id)initWithNibName: (NSString*)nibNameOrNil bundle: (NSBundle*)nibBundleOrNil

致电

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

in

- (void)viewWillAppear: (BOOL)animated

然后它适用于通过导航堆栈推送控制器以及使用UIImagePickerController(拍摄照片或取消)。

希望这有帮助。

答案 3 :(得分:2)

xcode 4.5在摘要页面上为您提供检查选项以隐藏状态栏

  1. 转到项目目标。
  2. 打开sumaary,然后选中Hide StatusBar Option ..

答案 4 :(得分:1)

您是否正在使用显示状态栏的第三方框架?