我目前正在尝试向UITableView
添加无限滚动,其中包含许多日历事件。由于事件标题并不总是适合单行,因此我在单元格中添加了多行UILabel
。为了计算单元格的高度,我通过iOS 8中的自动布局利用UITableView
的新自调整单元格.WWDC Session 226更详细地讨论了这一点。 / p>
为了实现无限滚动机制,我覆盖layoutSubviews
我需要计算一个部分的高度,该部分在给定的时间在屏幕上不可见。这可以通过使用[self rectForSection:0]
来完成。这样做时,表格会根据我必须在表格的初始化程序中定义的估计行大小返回高度,以使自定义单元格有效。
self.estimatedRowHeight = 44.0;
self.rowHeight = UITableViewAutomaticDimension;
当该部分进入屏幕时,我得到了该部分的正确大小,但由于我必须根据该特定部分的计算高度更新表的contentOffset,这会导致我的表上下跳跃。
关于如何解决这个问题的任何想法?有没有办法强制某个部分返回实际高度而不是估计的高度?