自定义表格单元格未调整大小以适合内容视图

时间:2017-01-08 05:50:51

标签: ios swift uitableview

我实现了包含3种自定义单元格的表格视图。如下所示,在公司信息部分中,我的自定义表格视图单元格CompanyInfoTableViewCell的总部标签正在被切断,因为我认为自定义表格单元格没有调整大小以适应内容视图。

enter image description here

我尝试在包含表视图的控制器的viewDidLoad方法中实现以下代码。此代码假设使单元格自动调整大小以适应内容,但它不起作用(编辑:它不起作用,因为我正在制作自定义单元格和表视图 编程使用无故障板 )。如何获取自定义表格视图单元格以显示我的所有内容?

tableView.estimatedRowHeight = 80
tableView.rowHeight = UITableViewAutomaticDimension
self.tableView.setNeedsLayout()
self.tableView.layoutIfNeeded()

CompanyInfoTableViewCell代码:

class CompanyInfoTableViewCell: UITableViewCell {
    override init(style: UITableViewCellStyle, reuseIdentifier: String?) {        
        //Create industry label
        industryLabel = UILabel(frame: CGRect(x: horOffset, y: 0, width: 0.8*screenSize.width, height: 21))
        industryLabel.center.y = 15
        contentView.addSubview(industryLabel)

        
         //Create headquarters label
        hqLabel = UILabel(frame: CGRect(x: horOffset, y: 0, width: 0.8*screenSize.width, height: 21))
        hqLabel.center.y = 40
        contentView.addSubview(hqLabel)
                
    }
}    

1 个答案:

答案 0 :(得分:1)

如果您没有使用故事板和AutoLayout约束,那么您需要根据其保留的内容手动计算UILabels将要采取的高度。我没有看到任何基于内容计算高度的代码,因此设置了标签的高度以及自定义单元格的高度。

您必须实施heightForRowAtIndexPath来设置细胞的高度。

相关问题