比例堆栈视图约束抛出数十个冲突

时间:2016-03-24 15:40:59

标签: ios xcode swift uiview uistackview

我正在尝试设置一个简单的登录视图,其中包含图像,文本字段和按钮。我决定使用堆栈视图使故事板与许多屏幕兼容。

Image of constraints

我可以看到约束有几十个问题!?它们总共加起来为1.0,这是堆栈视图的总高度,所以我看不出问题。

虽然百分比略有不同,但这是我想要实现的目标:

Image of conflicts / general design

感谢任何意见,谢谢!

1 个答案:

答案 0 :(得分:0)

也许你的冲突是因为你的堆栈视图padding非零?

如果将任何子视图(间隔符除外)的内容拥抱优先级或内容压缩优先级设置为1000(这意味着需要),也可能会引入冲突。

不是将子视图约束到堆栈视图的高度,而是将它们的高度限制在彼此之间。选择一个子视图作为基准,并根据基准的高度约束其他子视图的高度。

因此,如果您选择用户名标签的高度作为基准高度,则应创建如下约束:

  • Logo.height = 8×Username.height
  • Spacer1.height = Username.height
  • Spacer2.height = Username.height
  • UsernameField.height = 2×Username.height
  • Password.height = Username.height
  • PasswordField.height = 2×Username.height
  • Login.height = 2×Username.height
  • Register.height = 2×Username.height