首页 > 解决方案 > UITableView - 在 sectionHeader 中调整FontSizeToFitWidth

问题描述

sectionHeader为我的UITableview.

有时我必须用大文本填充它,所以我添加adjustsFontSizeToFitWidth = true了通常有效的。

在这种情况下,字体过大时不会调整大小。有谁知道我做错了什么?

override func tableView(_ tableView: UITableView, viewForHeaderInSection section: Int) -> UIView? {
    let headerView = UIView()
    headerView.backgroundColor = UIColor.lightGray

    let headerLabel = UILabel(frame: CGRect(x: 30, y: 0, width:
        tableView.bounds.size.width, height: tableView.bounds.size.height))
    headerLabel.textColor = UIColor.white
    headerLabel.text = self.tableView(self.tableView, titleForHeaderInSection: section)
    headerLabel.sizeToFit()
    headerLabel.adjustsFontSizeToFitWidth = true
    headerLabel.clipsToBounds=true
    headerLabel.numberOfLines=0
    headerLabel.lineBreakMode = NSLineBreakMode.byTruncatingTail
    headerLabel.minimumScaleFactor = 0.4
    headerView.addSubview(headerLabel)

    return headerView
}

标签: iosswiftuitableviewuitableviewsectionheader

解决方案


你需要删除

headerLabel.sizeToFit()使adjustsFontSizeToFitWidth属性起作用。


推荐阅读