用固定的字体大小计算UILabel高度&行数

时间:2015-12-26 11:28:54

标签: swift uilabel

我正在编写一个表格视图,其中每个单元格显示图像和一些文本。这些文本通过互联网下载,就像新闻应用程序一样,文本是动态的。

文本最多可以有2行,字体大小是固定的。 (虽然可以通过设置页面更改字体大小)

我对表格单元使用固定高度,我需要在运行时计算UILabel高度以进行布局排列。

如何使用固定字体大小(例如20)计算UILabel高度并允许2行?

2 个答案:

答案 0 :(得分:1)

尝试将行数设置为2,然后在UILabel上调用sizeToFit()。 之后,通过其框架label.frame.size.height

获取标签高度

答案 1 :(得分:0)

如果我没错,你想根据文字长度动态设置你的tablecell或UILabel的高度。

更简单的方法是在界面构建器中将UILabel autolayout设置为tablecell,并将UILabel行数设置为零,然后将以下内容放在tableView的viewDidLoad中:

tableView.estimatedRowHeight = 44.0 //(or some number you prefer)
tableView.rowHeight = UITableViewAutomaticDimension

这样,您可以拥有任意数量的线条,而无需计算标签的尺寸。