UIStackView 无需分配或填充

TRG*_*TRG 8 uitableview ios swift uistackview

我在我的应用程序上有一个视图,我需要能够推送动态数量的自定义子视图(视图数量在运行时会发生变化)。

我最初的想法是一个 tableview,但它似乎有点 OTT 设置所有委托方法。然后我发现了 UIStackView,它很棒,因为它在我添加和删除子视图时处理重绘和调整大小。

但是,当我在 UIStackView 中有少量视图时。它要么使每个视图垂直变大以填充空间,要么根据各种设置将它们分布在堆栈视图中。

我想要的是我添加的每个视图都附加在堆栈中的任何现有视图下。我不想分配或填充堆栈中的空白空间。有点像一个 UIStackView,每个子视图都有一个高度约束。

我认为这在堆栈视图中是不可能的,那么还有什么方法可以实现呢?毕竟我是否必须使用 tableview(或回退到在代码中进行布局?)

Str*_*ers 1

如果您的视图有定义的高度约束,则这应该适用于等间距分布。