我使用UITableView
来显示一些消息,并且单元格具有不同的高度。在我们将项目升级到swift3
之前,它很有效。
问题:
如果我在iOS 8.1
中运行相同项目,UITableView
将显示错误的高度44(默认单元格高度)。
我测试UITableView
会调用
- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath;
每次-viewDidAppear
之前和-viewWillAppear
之后的方法
方法,用于计算会话中每个第一个单元格的高度。
输出: Printed Height Output Here
使用iOS 9.3
进行测试,在UITableView
首次加载后,它永远不会调用该方法。
我认为这就是为什么给我错误的高度,但为什么要打电话?
答案 0 :(得分:0)
实施此UITableViewDelegate
方法:
func tableView(tableView: UITableView, estimatedHeightForRowAtIndexPath indexPath: NSIndexPath) -> CGFloat {
return UITableViewAutomaticDimension
}
和强>
func tableView(tableView: UITableView, heightForRowAtIndexPath indexPath: NSIndexPath) -> CGFloat
{
return UITableViewAutomaticDimension
}