在堆栈视图中设置某些项之间的空间

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在堆栈视图中设置某些项之间的空间相关的知识,希望对你有一定的参考价值。

在Interface Builder中,我使用水平UIStackView并希望将项目放置为:

   xx   xx   xx

每个x代表一个项目。 Item1和item2应该相互粘贴,但item2和item3应该是间隔的,依此类推。这意味着我不希望所有项目之间保持恒定的间距。

我怎么能这样做? (可能相当于工具栏的灵活空间)

谢谢 !

答案

在水平堆栈视图内部还有三个水平堆栈视图,以便您可以控制每个项目的间距和分布。见下面的截图:

enter image description here

另一答案

这是基于Lumialxk回复的答案。选择要处理的堆栈视图,并将间距属性更改为所需的值。

Screen shot of the property panel

另一答案

ios 11 only

stackView.setCustomSpacing(32.0, after: headerLabel)

欲了解更多信息:Stack View Custom Spacing

另一答案

以编程方式为每个视图:

stackView.spacing = 10.0

如果要在每个视图后创建自定义间距,并且需要支持低于iOS11:

创建一个高度清晰的UIView,并将其作为addArrangedSubview添加到stackView中。

另一答案

在堆栈视图中,您只能定义items之间的常量空间。这样做很容易,只需在大纲中选择堆栈视图并设置空间值。

另一答案

Swift 4:如果你想在第一个子视图之后设置一个空格:

stackView.setCustomSpacing(30.0, after: stackView.subviews[0])

以上是关于在堆栈视图中设置某些项之间的空间的主要内容,如果未能解决你的问题,请参考以下文章

堆栈视图,将空间折叠到内容

来自后台堆栈的片段 onResume

切换片段时如何维护子视图的状态?

表格视图单元格中的标签和文本字段之间的空间相等。

使用导航从工具栏菜单项单击在片段之间传递数据 - Kotlin

如何在 QML 中的 Listview 中保留特定列表项之间的空间