我创建了一个高度为
的UITableViewtableView.rowHeight = UITableViewAutomaticDimension
我发现了这些字符,例如p,g,y等被切断,无法正确显示。
我试图将高度设置得更大,但是,单元格高度会增加,但它仍然没有显示整个单词。
此外,我尝试过设置
之类的东西label.sizeToFit()
cell.textlabel.numberOfLines = 0
但一切都行不通
答案 0 :(得分:0)
sizeToFit并不意味着调整标签大小以匹配其字体。从UIView标题:
open func sizeThatFits(_ size: CGSize) -> CGSize // return 'best' size to fit given size. does not actually resize view. Default is return existing view size
open func sizeToFit() // calls sizeThatFits: with current view bounds and changes bounds size.
这是一种相对随意的方法,只返回某种大小。如果您想了解制作标签的大小,请使用
string.boundingRect(with: CGSize, options: NSStringDrawingOptions, attributes: [String : Any]?, context: NSStringDrawingContext?)
。但是,我发现它不太适合高度,所以你最好从字体中获取ascender / descender并自己计算尺寸。