【问题标题】:Storyboard layouts flush with edge of screen, but shows gap in actual iPhone 7 Plus故事板布局与屏幕边缘齐平,但在实际 iPhone 7 Plus 中显示间隙
【发布时间】:2017-09-18 13:46:48
【问题描述】:

我有一个用 Swift 编码并使用故事板的 iOS 应用程序。故事板中视图控制器的顶部有一个“标题栏”,应该与手机的左/右边缘齐平:

这在 iPhone 6s 中的行为与预期一致。但是,在 iPhone 7 Plus 中,它以某种方式在屏幕上显示可能 2 毫米的点击,好像自动布局不起作用。根据自动布局,前导空格是-16。将其设置为 0 并不能解决问题。

我在自动布局上是否缺少一些东西,使它可以在所有设备上工作而不会显示间隙?

【问题讨论】:

  • 是否有任何模棱两可/冲突的约束?做一个备份,移除所有对带有超级视图的视图的约束,并一一添加。
  • 这是给出约束的不好方法。您已经对边距而不是屏幕边缘进行了约束。因此,它在 6 秒内可以正常工作,但在任何 plus 设备中都不能正常工作。删除约束并使用Constraints to margin OFF 重新应用它们。
  • 让我知道它是否有效,我会回答这个问题:D
  • 还有一件事,当您在关闭Constraints to margin 的情况下给出约束时,请确保您将常数设为 0.0 而不是 -/+16.0
  • 谢谢!会试一试的,伙计们......

标签: swift autolayout xcode-storyboard iphone7plus


【解决方案1】:

这是给出约束的不好方法。您已经对边距而不是屏幕边缘进行了约束。因此,它在 6 秒内可以正常工作,但在任何 plus 设备中都不能正常工作。删除约束并使用Constraints to margin OFF 重新应用它们。

还有一件事,当您在关闭 Constraints to margin 的情况下给出约束时,请确保您将常量设为 0.0 而不是 -/+16.0

【讨论】:

  • 如果它解决了您的问题,请接受这个答案。 :)
猜你喜欢
  • 1970-01-01
  • 2017-06-23
  • 1970-01-01
  • 2018-04-19
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多