【问题标题】:changing constraints for different devices in xcode在 xcode 中更改不同设备的约束
【发布时间】:2020-06-19 15:42:37
【问题描述】:

我提交了我的应用程序以供批准,但它被拒绝了,因为旧型号的 iphone 和 ipad 无法正确显示应用程序。我试图对特征做不同的事情,但它只是改变了所有设备的约束。如何更改特定设备的约束条件?

【问题讨论】:

  • 您能否向我们展示您的故事板/xib 中的示例屏幕(可能是屏幕截图)以及您如何设置约束?仅当您将它们设置为这样做时,iOS 才不应更改不同设备上的约束。此外,在某些情况下,约束可能会发生冲突,因为它们没有正确设置并且它们不能处理更小(或更大)的屏幕尺寸。在这种情况下,iOS 会打破约束并尝试以这种方式重建布局。

标签: swift xcode constraints


【解决方案1】:

地狱阿曼达科恩

我强烈建议使用 DeviceLayout 如果您使用带有故事板或 xib 的自动布局

DeviceLayout 是一个 Swift 框架,可让您根据需要为每个设备设置不同的自动布局约束。

第 1 步。

继承 DeviceLayoutConstraint 以获得您想要根据设备大小进行不同设置的约束。

第 2 步。

为 IBInspector 上的设备简单地设置每个约束?

检查这个。它减少了您为每台设备设置布局的时间。

https://github.com/cruisediary/DeviceLayout

【讨论】:

    【解决方案2】:

    我不同意克鲁兹的回答。但你可以这样做,可能会有一些有意义的用例。

    在我看来,您应该在屏幕上使用UIScrollViews,以便较小的设备可以正确滚动和显示您的内容。

    您可以做的另一件事是使您的约束取决于您的屏幕尺寸。例如,图像的高度是屏幕尺寸的 1/3。您可以通过对视图控制器的视图进行相等的高度约束来实现这一点,并使用乘数字段来设置您的视图与屏幕尺寸相比应该有多少。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-12-02
      • 1970-01-01
      • 1970-01-01
      • 2018-07-16
      • 2017-05-12
      • 2015-10-29
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多