如何并排放置两个标签,一个可以生长,一个不可以?

时间:2018-05-03 15:17:56

标签: ios swift xcode uilabel

我有两个标签并排。我有两个约束集。 Label-A从视图的前沿开始。 Label-B从Label-1的后沿开始10px。没有宽度限制。

Label-A的文字长度各不相同; Label-B的文本是固定的(6个字符长)。这样可以正常工作,直到Label-A的长度超过某一点。然后Label-B离开屏幕。

在我将文本值分配给Label-A之前,如果将Label-B推到视图的后缘之外,我想用'...'截断Label-A文本。任何想法如何弄清楚我是否应该截断Label-A的文本和多少?这必须适用于纵向和横向模式。

感谢。

3 个答案:

答案 0 :(得分:3)

首先确保您的标签有前导和尾随的约束。

您的观看布局应如下所示:

|-8-[Label-A]-10-[Label-B]-8-|

之后设置horizontal content hugging priorityhorizontal compression resistance Label-B高于Label-A

答案 1 :(得分:3)

根据您的要求为其中一个标签设置内容压缩阻力优先级

查看这些快照:

默认为content compression resistance priority的两个标签。

enter image description here

我更改了content compression resistance priority标签blablabla blablabla,从750更改为749

结果是:

enter image description here

有关详细信息,请参阅Apple文档:Setting Content-Hugging and Compression-Resistance Priorities

答案 2 :(得分:1)

horizontal content hugging priority的{​​{1}}和horizontal content compression resistance priority高于Label-B。并且还将Label-A的尾随添加到superview。

Example