如何在 AutoLayout 中模拟条件拥抱优先级?
How to simulate conditional hugging priorities in AutoLayout?
我有一个包含多行 UILabel 和 UIImageView 的 UIView。 imageView 是一个具有特定高度和宽度的正方形,在单元格中垂直居中,而标签被限制在视图的顶部。这是一个小例子:
我希望能够基于 UILabel 或 UIImageView 使父视图可扩展,基于哪个具有更大的高度。我将如何去做这件事(在 Storyboard 中)?
您可以为标签和图像视图设置高优先级的底部和顶部约束。将常量设置为您想要的填充量。
然后,在父视图上,您需要添加一个优先级低于标签和图像的 top/bottom 约束的高度约束。
这样,您可以保证 label/image 和它们的超级视图之间的填充,这将迫使超级视图扩展其高度,因为它的优先级低于填充的优先级。
我有一个包含多行 UILabel 和 UIImageView 的 UIView。 imageView 是一个具有特定高度和宽度的正方形,在单元格中垂直居中,而标签被限制在视图的顶部。这是一个小例子:
我希望能够基于 UILabel 或 UIImageView 使父视图可扩展,基于哪个具有更大的高度。我将如何去做这件事(在 Storyboard 中)?
您可以为标签和图像视图设置高优先级的底部和顶部约束。将常量设置为您想要的填充量。
然后,在父视图上,您需要添加一个优先级低于标签和图像的 top/bottom 约束的高度约束。
这样,您可以保证 label/image 和它们的超级视图之间的填充,这将迫使超级视图扩展其高度,因为它的优先级低于填充的优先级。