【发布时间】:2020-07-08 13:16:48
【问题描述】:
我是 Swift 新手,并尝试重复计算器应用程序作为学习的一部分,但卡在自动布局中。
这就是我所做的:
- 将每一行设置为水平堆栈视图,并将所有行一起设置为垂直堆栈视图。
- 将垂直堆栈视图分布设置为均等填充。
- 将每个水平堆栈视图的约束设置为 theTopView.bottom = theBottomView.top,反之亦然。
- 将每个水平堆栈视图中每个元素的约束设置为 element.Top = stakcView.Top, element.Bottom = stakcView.Bottom。
距离设置为 0 的间隙:
然而,水平堆栈视图之间总是存在间隙,尽管它们之间的距离显示为 0。
谁能告诉我我做错了什么?尽管这两者之间的距离显示为 0,但为什么会有差距?非常感谢您的帮助!
约束:
【问题讨论】:
-
您的某个字段可能有边框。如果您设置“平等填充”,它将调整为最大对象的高度和宽度。它们之间没有空间,似乎是因为大小设置为与stackview中的所有视图相匹配。请注意,您的约束是
RED解决了该问题,其余的将相对较快地变得清晰。 -
另外,单击场景导航窗格顶部的红色小箭头。这将向您显示您在自动布局中的错误,让您有机会修复它。
-
@shim 你完全正确!边框被意外设置为 81。当我将其设置回 1 时一切都很好。我确实使用了红色箭头,但它的信息量不足以引导我找到答案。仍在学习如何有效地使用红色箭头。非常感谢您的帮助!
标签: swift autolayout