如何在swift中对齐标签文本,使其从标签的左上角开始?

时间:2016-03-15 17:02:33

标签: ios swift uilabel

我有一个lines属性设置为0的文本字段,因此当文本较长时,它会自动填充所有必要的空间。但是当字符串很短时,它会自动放在标签的中间,如下所示:

enter image description here

是否有一种方法(或者可能是要设置的属性)将此文本放在左上角?这是该标签的属性检查器:

enter image description here

3 个答案:

答案 0 :(得分:10)

如果您使用的是Autolayout,则可以尝试仅设置topleftright约束,而不受任何高度限制。这应该有效,但是如果你没有使用Autolayout,或者你在更改这些约束时遇到问题,你也可以在设置文本后调用label.sizeToFit()

要致电sizeToFit,如果您要在viewDidLoad或故事板本身设置文字,可以在viewDidLayoutSubviews上致电:

override func viewDidLayoutSubviews() {
    label.sizeToFit()
}

答案 1 :(得分:1)

这真的应该是Xcode中的默认选项,您可以在其他答案中使用解决方法,或者只使用TextView,默认情况下会为您提供您正在寻找的左上角行为

答案 2 :(得分:0)

你会认为这很容易,但似乎不是。这里列出了一个很好的解决方案how to set top left alignment for UILabel