Ios 为视图设置约束
我最近开始使用UIStackViews auto layout,但不断遇到屏幕截图上的警告,我不知道如何消除这些警告 任何帮助都将不胜感激Ios 为视图设置约束,ios,xcode,autolayout,uistackview,Ios,Xcode,Autolayout,Uistackview,我最近开始使用UIStackViews auto layout,但不断遇到屏幕截图上的警告,我不知道如何消除这些警告 任何帮助都将不胜感激 [1]: https://i.stack.imgur.com/a4aUp.png [2]: https://i.stack.imgur.com/U7knK.png [3]: https://i.stack.imgur.com/tcPO0.png [4]: https://i.stack.imgur.com/Ti3IH.png [5]: h
[1]: https://i.stack.imgur.com/a4aUp.png
[2]: https://i.stack.imgur.com/U7knK.png
[3]: https://i.stack.imgur.com/tcPO0.png
[4]: https://i.stack.imgur.com/Ti3IH.png
[5]: https://i.stack.imgur.com/PMTrj.png
[6]: https://i.stack.imgur.com/0LJh7.png
您的
stackView
中有许多ui视图
,而ui视图
没有任何固有高度,因此存在歧义。stackView
基本上不知道要为内部uiview
元素设置什么高度,因此也不知道它们将从哪个y位置开始
解决方案#1:
- 选择包含所有其他
的最顶部的stackView
,并在其属性检查器中,将其分布更改为stackView
按比例填充
- 为后退按钮提供X和Y位置
解决方案#2:
- 除了最后一个
底部空间
此外,不必要地嵌套了
stackView
s。此外,您没有在堆栈视图中执行所有操作
第一个视图看起来像是需要一个带有后退按钮的顶部栏。您应该将navigationBar
与navigationItem
一起使用,除非您的设计有特殊要求,否则它不需要也不应该位于stackView
中
最后一个视图看起来像是要留出空间,因此在stackView
中有一个bottomSpace
视图,这两个视图都是不必要的
解决方案#3
- 重新设计布局并进一步简化。
对于您的布局,您可以使用单个stackView
btw
例如,它不完全符合您的设计,但接近:
是否约束了stackview?您必须完全约束stackview。请添加更多详细信息,在尺寸检查器中显示约束。很难说是什么错了……在将高级stackview的所有四个侧面固定到实际视图@Brandonshow所有约束后,我是否需要为每个stackview设置约束。这不是最高级的。其中一个内部StackView约束导致ambiguity@staticVoidMan我不太清楚你的意思,我已经将顶部的stackview和所有其他的stackview嵌入其中,固定在主视图的4个侧面,感谢警告消失了。非常感谢您的帮助,而且您是对的,有些StackView是不必要的。我将以一个简单得多的设计重新开始。我决定使用您的第一个解决方案,因为它与我所追求的设计配合得很好。但是,在为标签设置约束时,我发现自己出现了以下错误:当我添加具有大于或等于关系的尾部约束时,我得到了以下警告:@AaronOwusu您确定是标签导致了该警告吗?在您的第二个屏幕截图中,该警告仍然存在,另外还有一个新的警告。像这样帮忙有点困难。基本上,您需要进一步熟悉autolayout引擎。我仍然会通过评论尽可能多地提供帮助。您对我在哪里可以了解有关自动布局的更多信息有什么建议吗?youtube有一些例子,但它们与我想要创建的内容并不相关。@AaronOwusu了解自动布局,它的可能性和局限性,然后重新思考您的设计并开始尝试。尝试以下教程: