如何水平对齐两个 UILabel(宽度固定和可变)

How to horizontally align two UILabel (with fixed and variable width)

我一直面临水平对齐两个 UILabel 和一个 UIImageView 的问题,如下所示:

第一个标签宽度可变,如果很长可以截断。第二个标签具有固定宽度,它应该始终与 UIImageView 的右侧对齐。它永远不应该离开屏幕。 UIImageView 与第一个标签的右侧对齐。

我已经尝试将它们嵌入到水平 UIStackView 中,但图像 + 第二个标签始终与单元格末尾对齐。在没有 UIStackView 的情况下尝试时遇到同样的问题。 请帮忙

您可以将标签和水平 StackView 嵌入到另一个水平堆栈视图中。然后,您需要将动态宽度 Label 的 Content Compression Resistance Priority(您可以在 Size Inspector 的底部找到这个 属性)设置得更小,以便它缩小。

然后在容器 StackView(包含所有视图的容器)上,您需要将约束设置为顶部、底部,导致父视图为 0,尾部大于或等于 0,因为它不会占用超级视图的所有 space,但同时如果内容太宽则不会偏移。

我希望你已经足够清楚了!