在横向模式iphone中隐藏状态栏时出现问题

时间:2012-05-31 12:07:32

标签: iphone hide landscape statusbar uiapplication

在我的iPhone应用程序中,整个应用程序的默认方向是横向模式。我想隐藏状态栏,所以我在appDelegate中使用了[[UIApplication sharedApplication] setStatusBarHidden:YES withAnimation:UIStatusBarAnimationNone];。但状态栏仅隐藏在第一个启动屏幕中,并且在视图控制器中它在顶部和所有其他视图控制器中留下一个空白区域,它在底部留下一个空白区域。我使用以下方法来解决问题,但没有用。

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

  2. 在info.plist中,状态栏最初为hidden = YES

  3. 在界面构建器中将状态栏设置为None

  4. 添加了[self.view setNeedsLayout];
     [self setWantsFullScreenLayout:YES];

  5. 仍然没有修复。任何的想法?请帮忙。

2 个答案:

答案 0 :(得分:2)

找到解决方案,隐藏状态栏[[UIApplication sharedApplication] setStatusBarHidden:YES withAnimation:UIStatusBarAnimationNone];就足够了。但仍然有一个白色的空间。当我通过Interface Builder将视图添加到视图控制器时,每个视图的帧大小在状态栏被隐藏时不会自动调整。因此,我必须在Interface Builder的Size Inspector中为每个视图设置Autoresizing方向。这解决了这个问题。希望它对某些人有所帮助,这就是我在这里发布答案的原因。 :)

答案 1 :(得分:0)

打开.plist文件并添加新密钥“状态栏最初隐藏”,然后将值设置为YES。我希望能帮助你。