2

我知道 UI 元素看起来会有所不同,这不是我担心的。我在 Xcode 5 中创建了一个简单的应用程序,它只在状态栏下方显示一个标签。在 iOS 7 中,这看起来不错。但是,当我在 iOS 6 设备上运行该应用程序时,标签显示在离状态栏太远的位置。我知道在 iOS 7 中,y=0 是屏幕的顶部而不是状态栏的底部,所以我明白为什么会这样,但我不知道如何解决它。我已经看到使用 的解决方案self.edgesForExtendedLayout = UIRectEdgeNone,以及在 Autolayout 关闭时使用 Interface Builder 中的增量的其他解决方案,但是这些都对我不起作用。

我该如何解决这个问题(同时仍然使用自动布局)?如果系统版本是 iOS 6.1 或更早版本,那么肯定有比仅仅从视图位置减去 20 px 更好的方法。

4

2 回答 2

2

您可以尝试在您的 nib 文件中的 UIViews 上使用 iOS6/7 增量。它位于 UIView 的大小检查器中。

在此处输入图像描述

于 2013-09-20T14:15:11.683 回答
2

我认为您正在寻找的答案在此技术说明中。(简而言之:应用锚定到视图控制器顶部布局指南的垂直空间约束。)

技术问答 QA1797:防止状态栏覆盖您的视图https://developer.apple.com/library/ios/qa/qa1797/_index.html

于 2013-09-24T17:03:14.247 回答