【发布时间】:2018-01-11 03:36:29
【问题描述】:
我正在尝试根据 UILabel 的高度设置 UITableViewCell 的高度。
我的问题类似于this one。
但是该答案中的 OC 代码现在似乎已被弃用(我不确定,只是找不到)。
我正在使用以下代码来计算标签的高度。
extension String {
// the length of text in one line
func size(ofFont font: UIFont) {
return (self as NSString).size(attributes: [NSFontAttributeName: font])
}
在cellForRow: 方法中:
let size = text.size(ofFont: font)
let height = ceil(size.width/(UIScreen.main.bounds.width))*size.height
但如果最后一个单词太长而无法在一行中显示,则需要额外的换行。
所以,问题来了。
感谢您的任何建议。
【问题讨论】:
-
更好地使用自动尺寸。
-
为什么不使用动态单元格大小?
-
你可以设置约束真的很简单
-
参见此处:stackoverflow.com/a/43535950/6479530,将文本视图替换为
UILabel和label.numberOfLines = 0。 -
@RAJAMOHAN-S 有帮助,谢谢。
标签: ios swift uitableview uilabel core-text