UITableView - 在sectionHeader中调整FontSizeToFitWidth

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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
}
答案

你需要删除

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

另一答案

解决方案是删除此行:

headerLabel.sizeToFit()

以上是关于UITableView - 在sectionHeader中调整FontSizeToFitWidth的主要内容,如果未能解决你的问题,请参考以下文章

如果 UITableView 在 UIScrollView 中,则无法在 UITableView 上执行滑动删除

如何在没有数组的 UITableView 中显示 UITableView Cell?

尝试在用户向 iOS 中的 UITableView 添加行时动态增加 UITableView 的高度

uitableview 自定义单元格在向下滚动 uitableview 时丢失其内容

我在学习iOS的UITableView,为啥UITableView的最后一块单元格只能显示一半? [关闭]

如何与重叠显示的 UITableView 交互另一个 UITableView