【问题标题】:How to make .xib files compatible to both iOS7, iOS6 and earlier [duplicate]如何使 .xib 文件同时兼容 iOS7、iOS6 及更早版本 [重复]
【发布时间】:2013-12-25 19:32:11
【问题描述】:

我在我的应用程序中使用 .xib 文件并且我使用的是 xcode5。

如果我在 iOS6 和更早版本中运行我的应用程序,对齐会丢失。

有人知道这个问题吗?
我们是否必须为 iOS7 和 iOS6 创建单独的 .xib 文件?

编辑:我关闭了自动布局,但在 iOS6 下,视图仍然下降了 20 像素。

【问题讨论】:

    标签: ios cocoa-touch ios7


    【解决方案1】:

    如果您还没有这样做,请在您的 xib 文件中关闭 AutoLayout。自动布局仅适用于 iOS 6 和更新的 iOS 版本。

    此外,您可以通过文件检查器中的弹出菜单预览 iOS 6 和 iOS 7 之间的 XIB 文件外观:

    【讨论】:

      【解决方案2】:

      在 iOS7 中,应用程序窗口从 y=0px 开始(在 iOS6- 中,它从 y=20px 开始)。

      处理这个问题的最快和最简单的方法(因为您已经在使用 Xcode5)是关闭 Autolayout 并利用 iOS6/7 Delta 值对于每个视图。

      基本上:

      • 选择每个viewController 的主view 并取消选中“Use Autolayout
      • 选择每个subViewUIButtonUILabel等),进入框架设置部分
        1. 将它们的 Y 帧值增加 20
          • 但似乎 ,@SudhakarTharigoppula,不需要执行此步骤。
            ...只需执行下一步
        2. ΔY 输入值 -20

      这将通过在 iOS7 中保留 20px 来启动您的应用,但在 iOS6 中,-20px 的 ΔY 将补偿您为每个 subView 分配的额外 20px。

      见:Status bar and navigation bar issue in IOS7

      【讨论】:

      • 这就是我要找的。适当地设置 ΔY 对我有用。 +1。
      猜你喜欢
      • 1970-01-01
      • 2014-02-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-01-28
      相关资源
      最近更新 更多