【问题标题】:Change Constraint from iPhone 7 and iPhone 7 Plus从 iPhone 7 和 iPhone 7 Plus 更改约束
【发布时间】:2017-06-25 19:03:56
【问题描述】:

我正在使用 xcode 中的尺寸类,但不知道如何更改 iPhone 7 和 iPhone 7 Plus 之间的布局约束。他们的尺寸等级都是 Compact-Width Regular-Height 所以我有点难过。

基本上,我希望下图所示的按钮对于 iPhone 7 的顶部约束为 446,对于 iPhone 7 Plus 的顶部约束为 500。我正在尝试通过 Interface Builder 执行此操作,因为此 View Controller 来自 pod。

【问题讨论】:

  • 您确定不能使用百分比获得几乎相同的结果吗? (例如按钮 y 位置 = 视图高度的 75%)
  • 你想操纵顶部约束吗?将按钮限制为与每个设备上的 底部 相同的距离不是更容易吗?
  • @deadbeef 你可以通过 Interface Builder 做按钮 y 的位置
  • 你正在尝试的完全违背了布局约束的使用方式。您应该根据高度计算坐标,而不是 446 与 500。 iPhone 5 上会发生什么?一旦你使用 iPad,你的方法就会完全陷入困境。

标签: ios xcode autolayout constraints


【解决方案1】:

链接顶部约束

@IBOutlet 弱变量 topCons: NSLayoutConstraint!

点燃这个

let screenSize: CGRect = UIScreen.main.bounds

    if screenSize.height > 700 // iphone 7 plus
    {
        topCons.constant = 500
    }

    else
    {
        topCons.constant = 446
    }

【讨论】:

  • 这本来可以,但是我正在尝试通过界面生成器专门执行此操作
  • 我认为您不能仅通过界面构建​​器为 iPhone 7 和 500 iPhone 7 Plus 执行 446,但如果有办法,我希望有人能帮助您
猜你喜欢
  • 2016-12-22
  • 2017-06-23
  • 1970-01-01
  • 1970-01-01
  • 2017-02-01
  • 2017-07-20
  • 1970-01-01
  • 1970-01-01
  • 2018-03-07
相关资源
最近更新 更多