2017-03-01 59 views
1

我创建的UITableViewCell与以下层次在UITableViewCell中添加UITableView。 TableView中高度使得基于内容

包含的UITableViewCell ------内容查看 ------------滚动型 ----- ------------- TableView

在TableView上滚动停止。

我已经在自定义类中实现了Table委托和数据源的TableView的高度约束的出口。

直到这一点数据是可见的一个问题。 [表格高度是固定的,通过xib设置为50 px]

现在在willDisplay调用中,我正在更新tableview内容大小的高度约束。但是这不会立即更新。一旦我滚动表格查看它显示更新的高度表。

围绕约束的常量显示正确显示,但UI显示旧的高度,虽然我已经调用了tableview的reloadData。遗漏这里...

GitHub的链接:https://github.com/sagarmane19/Sample-Apps

回答

1

1,创建了内部tableView与以下重写自定义类:在你看来控制器

class InnerTableView: UITableView { 
    override var intrinsicContentSize: CGSize { 
     return self.contentSize 
    } 
} 

2.Return UITableViewAutomaticDimensionheightForRow方法:

func tableView(_ tableView: UITableView, heightForRowAt indexPath: IndexPath) -> CGFloat { 
    return UITableViewAutomaticDimension 
} 

3.确保您有topbottom单元内部的约束tableView

+0

我已经尝试过这种方法。现在能够看到更多的细胞,其中更早显示只有一个细胞。这是它现在的样子:https://sagarm.tinytake.com/sf/MTM3Nzc2NF81MDA3MDg2 –

+0

GitHub链接:https://github.com/sagarmane19/Sample-Apps –

+0

@Sagar ...是的,关键是您没有为具有动态高度的视图指定高度约束,而是依赖于自动布局。 – alexburtnik

相关问题