UILabel 顶部对齐与多行
Posted
技术标签:
【中文标题】UILabel 顶部对齐与多行【英文标题】:UILabel top alignment with multiline 【发布时间】:2013-10-31 10:24:42 【问题描述】:我有一个UILabel
,UICollectionView
中有 4 行。当少于 4 行时,我希望文本位于顶部而不是中心。
谢谢..
【问题讨论】:
【参考方案1】:实现这一点的更快方法是将 UILabel 的换行模式设置为“Clip”并添加固定数量的换行符。
myLabel.lineBreakMode = NSLineBreakByClipping;
myLabel.text = [displayString stringByAppendingString:@"\n\n\n\n"];
此解决方案不适用于所有人 - 特别是,如果您仍想在字符串末尾显示“...”(如果它超过了您要显示的行数),则需要使用较长的代码之一——但在很多情况下,这会得到你需要的东西。
你也应该看看this blog.. 这个链接也可以帮助你Vertically align text to top within a UILabel
【讨论】:
帮助我解决这个问题的唯一答案,这个简单的 2 行代码。非常感谢! 很高兴帮助你@Tom...干杯。【参考方案2】:在斯威夫特中:
yourLabel.lineBreakMode = NSLineBreakMode.ByClipping
yourLabel.text = yourString.stringByAppendingString("\n\n\n\n")
【讨论】:
【参考方案3】:这就是解决办法
dispatch_async(dispatch_get_main_queue(), ^
yourLabel.numberOfLines = 0;
[yourLabel sizeToFit];
);
【讨论】:
它确实有效.. 我不明白为什么,因为这已经是主线程了以上是关于UILabel 顶部对齐与多行的主要内容,如果未能解决你的问题,请参考以下文章
多行 UILabel 与固有内容大小的 UILabel 宽度相同