因此,在对自动布局约束感到沮丧之后,我正在处理我的个人项目,我发现了Stack Views。在观看了关于该主题的几个教程和指南后,我想尝试一下。所以我创建了一个新的Xcode项目,并与他们玩了一段时间,他们似乎工作正常。但是,在将它们实现到我的大型项目的过程中,我遇到了一些问题,我希望这些问题是我的错误而不是Xcode 8错误。
在堆叠视图并将它们分开后,我得到了这个结果,这正是我想要实现的效果:
然而,当我在模拟器中运行它时,即使与故事板完全相同的大小,视图也会压缩成一个胖块状的混乱,完全不同于故事板上显示的内容:
(忽略绿色的东西,只是为了帮我布局)
//我如何堆叠视图
我主要逐行堆叠所有内容,然后将行堆叠在一起。然后我将主堆栈视图约束了10个点到前导和尾随的超级视图&& 28点到顶部布局指南,40点到底部布局指南。
如何正确堆叠这些该死的视图,使其在所有设备和屏幕尺寸上看起来完全相同?请尝试尽可能具体,包括内容模式等。
答案 0 :(得分:2)
以下是我实施的解决方案:
查看HIERARCH
<强>规格强>
MainStackView
约束:Top - 20,Leading - 10,Trailing - 10,Bottom - 20
对齐:填充,分布 - 填充,间距 - 20
ROW1
约束:MainStackView的相等高度乘以 - 0.1
行2
没有
ROW3
约束:MainStackView的相等高度乘以 - 0.37
对齐:填充,分布 - FillEqually,间距 - 10
Row31 , Row32 , Row33
约束:没什么
对齐:填充,分布 - FillEqually,间距 - 10
Row34
约束:没有,使用乘数为Row34添加相等宽度的小视图约束 - 0.314
对齐:填充,分布 - 填充,间距 - 10
ROW4
约束:与Row1的高度相等,在与Row4相等宽度的小视图上添加约束,使用乘数 - 0.314
对齐:填充,分布 - 填充,间距 - 10
<强>输出强>
答案 1 :(得分:1)
首先,您需要创建单个stackview外侧,然后创建4个堆栈 查看上层栈视图的内侧。然后外层栈视图 对齐和分配是填充。内部1和4堆栈视图高度 约束相同,内部视图高度固定。
然后第3个内部堆栈视图有4个堆栈视图,所以前3个分布 是填充相等和第四堆栈视图分布填充和 手动设置约束。我希望这会对你有所帮助。