比例堆栈视图约束引发数十个冲突
Posted
技术标签:
【中文标题】比例堆栈视图约束引发数十个冲突【英文标题】:Proportional stack view constraints throwing dozens of conflict 【发布时间】:2016-03-24 15:40:59 【问题描述】:我正在尝试设置一个由图像、文本字段和按钮组成的简单登录视图。我决定使用堆栈视图使情节提要与许多屏幕兼容。
Image of constraints
我可以看到约束有几十个问题!?它们总共加起来是 1.0,这是堆栈视图的总高度,所以我看不到问题。
虽然百分比略有不同,但以下是我想要完成的想法:
Image of conflicts / general design
感谢任何输入,谢谢!
【问题讨论】:
【参考方案1】:也许您遇到冲突是因为您的堆栈视图的 padding
不为零?
如果您将任何子视图(分隔符除外)的内容拥抱优先级或抗内容压缩优先级设置为 1000(这意味着必需),也可能会引入冲突。
不要将子视图约束到堆栈视图的高度,而是将它们的高度相互约束。选择一个子视图作为基准,并根据基准的高度约束其他子视图的高度。
因此,如果您选择用户名标签的高度作为基准高度,您应该创建如下约束:
Logo.height = 8 × Username.height Spacer1.height = 用户名.height Spacer2.height = 用户名.height UsernameField.height = 2 × Username.height Password.height = 用户名.height PasswordField.height = 2 × Username.height Login.height = 2 × Username.height Register.height = 2 × Username.height【讨论】:
以上是关于比例堆栈视图约束引发数十个冲突的主要内容,如果未能解决你的问题,请参考以下文章
堆栈视图中的自动约束冲突、Swift 2、iOS 9.3、XCode 7
如何在 Xcode 的嵌入式堆栈视图中设置边距而不会出现约束错误?