在Interface Builder中使用空UIStackView的UIScrollView的约束错误

sol*_*ell 4 interface-builder uiscrollview ios swift uistackview

我正在关注这个Stack View Apple教程的" 动态堆栈视图 "部分,如果我将(在)内部留空,而不是放入其中,我在Interface Builder中遇到了约束问题.我希望我动态创建所有的,所以我不想在那里留下一个我只需要以编程方式处理或删除.UIStackViewUIScrollViewUIButtonUIViewControllerarrangedSubviewsUIView

我可以忽略错误,它仍然可以正常工作,没有运行时约​​束错误.但是,我不想在我的xib/nib中留下约束问题.

满足Interface Builder最简洁的方法是什么?如果我添加一个具体的高度约束,那么我必须为它创建一个插座并以编程方式删除它.这似乎过于侵入性,我宁愿尽可能多地在xib/nib中留下自动布局.

Interface Builder概述

约束错误

sol*_*ell 9

事实证明,为了满足Interface Builder,UIScrollView需要为其内容设置一个高度,并且它不会假设高度为0.因此,既然UIStackView是内容视图,它需要有一个高度.即使在运行时它将具有内容,因此高度,Interface Builder需要具有后备.因此,设置内在大小.

它位于尺寸检查器的底部:

在此输入图像描述

内部大小默认(系统定义)更改为占位符,并将高度设置为您想要的任何值.在Interface Builder中设计时足够大的东西可能是一个好主意.您可以将Width设置为any,或选中None复选框.