我正在使用自行调整表格视图单元来支持动态类型。
当用户将字体大小设置为正常时,行高为44.但是,当用户将字体调整为更小或更大时,行高度将分别减小或增大。
那么,我应该将estimatedRowHeight
设置为什么,因为rowHeight
会因用户的动态类型设置而发生变化?
答案 0 :(得分:0)
选择默认的“动态类型”时,.body pointSize为17.0,所以我使用此计算方式
self.tableView.estimatedRowHeight = [yourEstimateForDefaultSize] / 17.0 * UIFont.preferredFont(forTextStyle: .body).pointSize
对于默认的动态类型大小,此估计是准确的。对于其他尺寸,它会失去准确性,但会有所改善
答案 1 :(得分:0)
我可能会尝试使用委托方法动态估算高度:
func tableView(tableView: UITableView, estimatedHeightForRowAtIndexPath indexPath: NSIndexPath) -> CGFloat{
return topOffset + bottomOffset + fontSize * countOfLines
}