UITableView-sectionHeader中的AdjustsFontSizeToFitWidth

时间:2018-07-18 13:25:32

标签: ios swift uitableview uitableviewsectionheader

我为我的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
}

2 个答案:

答案 0 :(得分:1)

您需要删除

headerLabel.sizeToFit()使 adjustsFontSizeToFitWidth 属性正常工作。

答案 1 :(得分:0)

解决方案是删除此行:

headerLabel.sizeToFit()