2015-12-06 26 views
0

这是我的代码迅速如何让UI标签总是4线

aboutMessageLabel.lineBreakMode = .ByWordWrapping 
//    .ByWordWrapping // or NSLineBreakMode.ByWordWrapping 
      aboutMessageLabel.numberOfLines = 4 
      aboutMessageLabel.text = "bla bla" 

其中aboutmessageLabel是的UILabel的一个实例。

如果我的内容超过4行,它只显示前4行,这就是我想要的。

但是,如果内容少于4行,它的高度不会保持为4行的高度,它就成为内容的高度。

有无论如何,即使内容少于4行,我总是可以制作标签4行?

+0

看起来好像你正在约束中使用标签的固有尺寸。您应该将标签的高度限制设置为您想要的高度以防止调整大小。 – beyowulf

回答

0

(第2图像等)设置标签的尺寸在MainStoryboard,然后单击您的标签,然后在Attributes Inspector设定的号码或Lines至4是这样的:

enter image description here

您的标签将有4条线路,不管是谁多少文字有(可以是一件坏事,以及如果你有例子太多文字等):

enter image description here

此外,您是否应该为标签添加约束条件?这将始终保持相同的大小。我假设你想创建一个产品,歌曲等的元描述。所以,如果你保持相同的尺寸,并设置了4条线,你会没事的。它会根据单词数量进行调整,同时保持大小。编辑标签背景的颜色以查看它是否工作/测试时保持相同大小。

+0

我的文本是动态的,我在故事板中设置了第4行的数量,并删除了我的代码,但仍然出现问题 – sarah

+0

您是否在MainStoryBoard中调整了大小?你有足够的文字来填补这4条线吗?顺便说一句,编辑属性检查器中的文本,而不是在VC本身。就像在图像中一样。 – lukaivicev

+0

我并不总是有足够的文字4行,这是我的问题,首先,你有我吗? – sarah