【问题标题】:Transforming app from iOS6 to iOS7 [closed]将应用程序从 iOS 6 转换为 iOS 7 [关闭]
【发布时间】:2013-12-05 12:15:51
【问题描述】:

我想将iOS6 应用程序更改为iOS7。(即)我想要iOS7 兼容性。我在我的应用程序中使用自定义导航栏和本机标签栏。当我在 iOS7 模拟器中运行我的应用程序时,视图正在向上移动。我将DELTA Y 的值设置为20。之后我也无法将uiviewuiobjects 置于正确的位置。

有人可以帮我吗?

我们将不胜感激。

提前致谢。

【问题讨论】:

标签: objective-c ios7 xcode5


【解决方案1】:

您必须将 Delta Y 设置为 -20 而不是 20!另外关于 UIControls 检查自动布局约束。如果您正确设置所有此应用程序,您的应用程序将在 iOS 6 和 7 中运行良好。

【讨论】:

  • 如果我将 Delta Y 设置为 -20,则视图正在向上移动。也就是说,状态栏与视图重叠。视图移到状态栏后面。
  • 在你的vieDidLoad方法中设置self.navigationController.navigationBar.translucent = NO;
  • 对不起,我也没有明白。我正在使用自定义导航控制器。
  • 尽可能贴出 iOS 6 和 7 的 UI 截图。
  • 我试过了。但是我没有足够的npoints来发布图片。
【解决方案2】:

尝试为 iOS 7 设置 self.edgesForExtendedLayout = UIRectEdgeNone。如果这不起作用,另外将 delta 设置为 64 像素,因为您似乎正在使用 UINavigationController,为此您必须将其设置为 20+44。

【讨论】:

  • 如果我将 delta 设置为 64,我的视图正在向下移动。我想知道,我是否必须将 delta 设置为 +20 或 -20。一些朋友说我将其设置为 -20。但是我将值设置为+20,并且我的视图处于正确的位置。但不是视图中使用的 UI 控件。
  • 查看link