防止UILabel截断尾巴

时间:2016-02-01 03:40:54

标签: ios storyboard uilabel

我有两个UILabel s:名称说明。约束设置如下:

  • 名称有左侧和上方约束
  • 说明具有右上限约束
  • 它们之间至少有10个像素的间距约束,以便它们不重叠

enter image description here

当我运行程序时,不一致,有时名称会被截断,有时描述会被截断。

问题是:有没有办法保证在空间不足时总是截断正确的标签?

3 个答案:

答案 0 :(得分:0)

您可以尝试为左手标签(lbl1)设置最小宽度约束,然后将约束连接到ViewController中的IBOutlet。

然后在加载或willAppear或任何其他相关操作上,确定lbl1的最小宽度并将其设置为约束常量。

然后在视图出现之前,它应该将右侧标签更新为正确的宽度而不截断左侧的标签。

有关确定标签尺寸的参考,请参阅以下答案: https://stackoverflow.com/a/19128912/933887

答案 1 :(得分:0)

您可以使用此属性来减小字体大小不是iss set

答案 2 :(得分:0)

解决此问题的正确方法是更改​​其中一个标签的内容拥抱优先级。默认情况下,此设置为251。只需将标签的内容拥抱优先级之一更改为250或252,具体取决于您希望“拥抱”它的方式。

code中:

func setContentHuggingPriority(_ priority: UILayoutPriority, 
                              for axis: NSLayoutConstraint.Axis)

或界面生成器:

如果需要有关此主题的更多信息,请查看此帖子:https://medium.com/@abhimuralidharan/ios-content-hugging-and-content-compression-resistance-priorities-476fb5828ef