iOS 7上的状态栏问题

时间:2013-10-22 14:35:21

标签: ios7 uitabbarcontroller uinavigationbar uistatusbar

在将我的应用程序升级到iOS 7作为基本SDK时,我注意到状态栏存在一些问题。基本上,我的选项卡栏控制器中的导航栏似乎太靠近状态栏。有任何方法可以解决这个问题并让它看起来更好吗?enter image description here

3 个答案:

答案 0 :(得分:1)

在veiwDidLoad方法中添加以下代码:

if ([self respondsToSelector:@selector(edgesForExtendedLayout)]) {

    self.edgesForExtendedLayout = UIRectEdgeNone;

}

答案 1 :(得分:1)

  

检查以下代码。

if (floor(NSFoundationVersionNumber) > NSFoundationVersionNumber_iOS_6_1)
 {
    [self setEdgesForExtendedLayout:UIRectEdgeLeft | UIRectEdgeRight];
 }

答案 2 :(得分:0)

我自己遇到了这个问题,有两种选择:

  1. 在UTabBarController和UIViewController之间添加UINavigationController。即使您不打算推送视图控制器,这也是最好的方法,作为奖励,以后更容易添加此功能。它将在所有iOS版本上本机支持,无需任何额外代码。

  2. 在Interfaceb构建器中,将UINavigationBar放在状态栏下方。要使用AutoLayout执行此操作,请在导航栏中向“顶部布局指南”添加固定的垂直空间“0”,并在veiwDidLoad方法中添加以下代码:

    if ([self respondsToSelector:@selector(edgesForExtendedLayout)]) {
        self.edgesForExtendedLayout = UIRectEdgeNone;
    }
    
  3. 希望这有帮助