尽管添加了子视图,但Autolayout无法确定UIStackView的高度或垂直位置。
这是一个非常常见的错误和“陷阱”所以请看下面的答案。
答案 0 :(得分:6)
如果这是针对UIStackView,请确保您使用的是addArrangedSubview
而不是 addSubview
答案 1 :(得分:0)
对我来说,我收到以下错误:
warning: Ambiguous Layout: Position and size are ambiguous for 'Button'.
按钮放在Interface Builder的堆栈视图中。问题是我在界面生成器中检查了“隐藏”,这意味着Xcode吓坏了,说位置和大小都不明确。只需取消选中堆栈视图中的“隐藏”,警告就会消失......魔术! ✨
答案 2 :(得分:0)
从 XCode 12.3 开始,您可以控制从 StackView
到 View
的拖动,这将允许您创建约束来解决警告:
这将打开此窗口,如果您想处理前导/尾随空间问题或居中,这将很有帮助: