tableViewController

时间:2016-10-19 09:42:21

标签: ios swift tableview

我在tableViewController的顶部有一个视图。
该视图名为viewBackground
它显示用户点击的帖子,表格单元格将显示评论。

我想要做的是根据标签viewBackground的大小来调整theLabel的大小。
我通过将单元格中的标签设置为0来在单元格中完成此操作行和实现这个小代码:

tableView.rowHeight = UITableViewAutomaticDimension
tableView.estimatedRowHeight = 205

如何对viewBackground进行同样的操作?

这是tableView的图片:

enter image description here

3 个答案:

答案 0 :(得分:0)

我建议为当前的tableView制作一个标题 - 而不是在其上方添加外部视图 - 然后你可以按照这个answer,它应该可以帮助你如何计算标签' s字符串高度并在tableView(_:heightForRowAt:)方法中返回。

希望这会有所帮助。

答案 1 :(得分:0)

您可以创建包含两个部分的表格视图。第一节将包含选定的帖子;第二部分 - 评论。如果您需要,我可以提供一些代码。

答案 2 :(得分:0)

添加了此代码,它有所帮助!

override func viewDidLayoutSubviews() {
    super.viewDidLayoutSubviews()

    if let headerView = tableView.tableHeaderView {
        let height = headerView.systemLayoutSizeFittingSize(UILayoutFittingCompressedSize).height
        var headerFrame = headerView.frame

        //Comparison necessary to avoid infinite loop
        if height != headerFrame.size.height {
            headerFrame.size.height = height
            headerView.frame = headerFrame
            tableView.tableHeaderView = headerView
        }
    }
}