【问题标题】:iOS 8 Autolayout with Size Classes带有大小类的 iOS 8 自动布局
【发布时间】:2015-01-05 03:35:10
【问题描述】:

这快把我逼疯了。我需要的只是将子视图与超级视图对齐并填充其边界。为此,我以前所做的只是为情节提要中的子视图创建 4 个自动布局约束,并将相对于子视图的顶部、左侧、底部、右侧边距设置为 0。但在 Xcode 6 中,启用 Size 类后,左右边距默认为 -16,将它们设置为 0 无效。无论我做什么,子视图永远不会填充超级视图边界,左右两侧的像素间隙很少。我该如何解决?

仅供参考:这发生在 iPhone 6+/iPad Air 模拟器上。

【问题讨论】:

    标签: ios8 autolayout xcode6 uistoryboard size-classes


    【解决方案1】:

    希望这将解决您与自定义边缘到边缘问题相关的所有问题。 我已经突出显示了您需要删除复选标记的区域。

    确保如果您使用的是自动布局,则所有边缘的检查引脚都设置为零,并且未选中对边距的约束。

    当从超级视图向视图添加约束时,请从 pin 中删除复选标记。默认情况下,即使您将其设置为 0,它也会为 -16。

    【讨论】:

    • 谢谢,它就像一个魅力。但是,我在使用 Autolayout 后看到了另一个问题。我现在手动将 CALayer 添加到子视图并设置其框架。现在的问题是图层的中心向下移动,我怀疑这与导航栏有关。如果我没有设置自动布局约束并手动将框架分配给视图然后添加 CALayer,它会正确居中。有什么线索吗?
    • 如果可能的话,请您添加图片和您编写的代码,这将有助于您的视图从中心向下移动。
    • 我发现了错误。视图的上边距约束相对于顶部布局指南底部而不是顶部为 0。
    • @DeepakSharma,如果它解决了您的问题,请接受答案。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-09-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多