2015-10-13 86 views
0

当我调整我的tableView的大小时,内容被切断,因为contentSize似乎由tableView.estimatedRowHeight = 18决定。使用单元格大小自动布局调整表格视图框以适合动态内容

tableView(调整为自动布局)的实际contentSize大于sizeToFit()认为它是。

如何判断sizeToFit()我的tableView内容的大小是否正确?

tableView.frame = CGRectMake(0, self.scrollView.frame.size.height + 18, self.view.frame.size.width, 350) 
tableView.estimatedRowHeight = 18 
tableView.rowHeight = UITableViewAutomaticDimension 

self.view.addSubview(self.tableView) 
tableView.sizeToFit() 

回答

0

我如何告诉sizeToFit()我的tableView内容

你不正确的大小。作为一个视图,表视图不知道它有多少行,甚至不知道它应该是行的高度。 (它无法读懂你的想法。)你必须根据行数及其高度计算它自己的高度

+0

自动布局调整后,我如何获得单元格的大小? – JVett

+0

一个单元格是一个视图。只要看看它的高度。 – matt

+0

正确答案是在viewDidAppear中获取每个单元格的高度。这将解释自动布局高度调整。 for cell in self.tableView.visibleCells { newTableHeight = newTableHeight + cell.frame.height } – JVett

相关问题