设置了预估行高
当前显示行高会调用三次
预估行高不同,调用次数不同,预告行高大,调用次数少,预估行高小.调用次数多
1 使用预估行高计算处预估的 contentSize
2 根据预估行高,判断计算次数,顺序计算每一行的行高,更新contentSize
3 如果预估行高过大,超出预估范围,顺序计算后续行高,一旦到填满屏幕退出,同时更新contentSize
4 使用预估行高,每个cell显示前都需要计算,单个cell的效率是低的,整体效率高
5 执行顺序 行数---->cell--->行高(每个cell调用一次就调用一次行高,对应的)
6 预估行高的取值尽量靠近 不要太大不要太小
没有设置预估行高
1 计算所有行高度
2 再计算显示行的高度 问题:为什么调用所有的行高的方法?
3 UITableView继承自UIScrollView,苹果非常注重用户体验,所以要求表格滚动的时候要流畅,而这个取决于(contentSize)可以准确的计算滚动范围 这就是为什么把所有的都计算一遍的原因
4 执行顺序 行数--->行高--->cell显示内容
5 dequeueReusableCellWithIdentifier(identifier: String, forIndexPath indexPath: NSIndexPath)这个方法会调用行高的方法
6 dequeueReusableCellWithIdentifier(identifier:String)这个方法不会调用行高方法不建议使用