通过 UIStackView 在大小相等的 UIImages 下排列自定义大小的 UILabels

Arrange custom sized UILabels Under Equally Sized UIImages all by UIStackView

我想通过 UIStackView 在大小相同的 UI 图像下排列可变大小的 UI 标签。但我最终得到了缩小的字体或用两行包裹的文本。请参阅下面的图片以了解想法。

[实际问题]此外,它唯一按预期工作的时间是当我将容器设置得足够大时。我的目标是在屏幕宽度的 60% 以内实现这一点,从 iphone 5 及以上开始。

我想达到的目标:

但我最终得到的结果是:

或者这样:

结构如下

注意:所有 UI 都是用堆栈中的堆栈制作的。所有图像和标签都有自己的堆栈,然后包裹在后续堆栈中以垂直和水平对齐。

在下面的屏幕截图中查看约束关系和视图层次结构。 UILabelUIImageView 水平居中。并且具有垂直 space 和 UIImageView 而且 UILabel 不在 UIStackView 层次结构中。

更新:将 UIImageView 和 UILabel 都放入容器 (UIView) 中。然后在 UIStackView 中,以防需要外部堆栈。