解决 UIStackView 布局歧义

Posted

技术标签:

【中文标题】解决 UIStackView 布局歧义【英文标题】:Solving UIStackView Layout Ambiguity 【发布时间】:2016-03-27 23:45:39 【问题描述】:

我有一个自定义的UITableViewCell,它包含以下元素:

UIImageView UILabel UILabel

我想要左侧的 UIImageView,右侧的 2 个 UILabel 对象堆叠在一起。这是它在故事板中的样子:

我有一个水平的 UIStackView。里面是UIImageView 和一个垂直 UIStackView

这是层次结构的样子:

出于某种原因,我收到有关标题和描述标签不明确的警告。我试图一次又一次地调整它们,但我无法完全正确。任何建议表示赞赏。

【问题讨论】:

您是否将包含您的标题和描述的水平UIStackView 固定在任何东西上? 是的,superview 的所有 4 个方面 你想让标题和描述垂直填充到与你的图像视图相同的高度吗? 【参考方案1】:

使垂直的stackview 等量填充

我要做的是固定图像的纵横比或大小,并使水平堆栈视图同样填充

如果图像大小是可变的,那么我会将图像的内容拥抱优先级设置为更高的垂直堆栈视图,以便它显示整个图像而不进行裁剪和填充垂直堆栈视图。

【讨论】:

以上是关于解决 UIStackView 布局歧义的主要内容,如果未能解决你的问题,请参考以下文章

UITextfield 在编辑模式下从顶部被剪切

iOS布局-UIStackView

UIStackView 表单布局

无法在 UIStackView 中设置编程布局约束

如何让 UIStackView 更新其布局?

UIStackView 布局