无法让堆栈视图在滚动视图中正确调整

Cannot get stackview to adjust correctly in scrollview

我有一个内容视图嵌入到滚动视图中。在此内容视图上,我有一个 ImageView 和一个带有多个标签的堆栈视图。当行太长时,两个标签应该换行。当底线换行时,我希望它激活滚动视图。目前,我有这样的约束设置:

Scrollview -> Parent view controller = 0,0,0,0
UIView -> Scrollview = 0,0,0,0
ImageView -> UIView = Top: 20, Bottom: 45, Leading/Trailing: 80
Stackview -> Imageview = Top: 45
Stackview -> UIView = Leading: 20, Bottom: 40, Trailing: 150

标签是默认的,框架紧贴文本。 (我会 post 图片。)

下图仅显示了在标签上设置约束以尝试强制自动换行的尝试之一 - 它没有奏效。

这是我得到的:

底部换行后,堆栈视图应向下增长并启用滚动。我需要能够滚动,但我看到的其他事情是它只会滚动到最后一行并弹回视图之外。我一直无法弄清楚如何向该行添加足够的填充以防止它这样做,但我认为这是另一个问题。

我试过在堆栈视图上设置宽度约束以强制标签换行。标签设置为0行,换行设置为自动换行。我也试过为标签设置一个较小的尾随约束以强制它换行,但这也不起作用。

这一切都是在 Interface Builder 中完成的,所以没有代码。如果它能解决我的问题,我可以转到所有代码。请告诉我我还需要 post 什么来帮助解决这个问题。谢谢!

1- 您需要从滚动视图的 contentView 拖动到 vc 和 select Equal-widths

的主外部视图

2- 您需要为 imageView 设置高度限制

3- 将 stackview 的分布设置为 fill