4

我有一个UILabel4 行UICollectionView。当少于 4 行时,我希望文本位于顶部而不是中心。

谢谢..

4

3 回答 3

4

这是解决方案

dispatch_async(dispatch_get_main_queue(), ^{
            yourLabel.numberOfLines = 0;
            [yourLabel sizeToFit];


        });
于 2013-10-22T13:49:01.963 回答
2

一个更快的方法是通过将 UILabel 的换行模式设置为“Clip”并添加固定数量的换行符。

myLabel.lineBreakMode = NSLineBreakByClipping;
myLabel.text = [displayString stringByAppendingString:@"\n\n\n\n"];

此解决方案不适用于所有人 - 特别是,如果您仍想在字符串末尾显示“...”,如果它超过了您显示的行数,则需要使用其中之一更长的代码位——但在很多情况下,这会让你得到你需要的东西。

你也应该看看这个博客。这个链接还可以帮助你在 UILabel 中将文本垂直对齐到顶部

于 2013-10-22T13:52:58.413 回答
1

在斯威夫特:

yourLabel.lineBreakMode = NSLineBreakMode.ByClipping 
yourLabel.text = yourString.stringByAppendingString("\n\n\n\n")
于 2015-04-27T08:52:56.663 回答