没有编辑每个视图,iOS 7状态栏不会超出视图的顶部

时间:2013-09-19 20:00:31

标签: ios objective-c ios7

我已经看到了每个问题的答案:

Status bar appear over my view's bounds in iOS 7

Status bar and navigation bar appear over my view's bounds in iOS 7

New iOS 7 statusBar leaves a range 20px in apps compiled in Xcode 5

iOS 7 status bar back to iOS 6 default style in iPhone app?

然而,这些答案似乎都不适合我。我正试图以“黑色不透明”样式显示状态栏,正如我在.plist中设置的那样。

有没有办法让应用程序继续工作,好像状态栏没有包含在窗口中一样?

我试过这个:

CGFloat statusBarHeight = [[UIApplication sharedApplication] statusBarFrame].size.height;
self.window = [[UIWindow alloc] initWithFrame:CGRectMake(0.0f, statusBarHeight, [UIScreen mainScreen].bounds.size.width, [UIScreen mainScreen].bounds.size.height - statusBarHeight)];

statusBarHeight 0application:didFinishLaunchingWithOptions:。手动将其设置为20.0f似乎只是搞砸UIWindowUIViewController s会高于屏幕。 (另外,手动设置值20.0f感觉很脏)

我错过了什么?

修改

我还应该指出,我使用隐藏UINavigationController的{​​{1}}。

编辑2:

在调试或Ad Hoc(测试飞行)版本中,这似乎只是应用程序的问题。 App Store上完全相同的应用程序会显示状态栏。为什么这会影响调试和临时发布?

1 个答案:

答案 0 :(得分:1)

UIViewController.edgesForExtendedLayout设为UIRectEdge.None

Edges For Extended Layout