ios - estimatedHeightForRowAtIndexPath 的错误滚动位置

标签 ios uitableview heightforrowatindexpath

我正在使用 UITableView 建立聊天。自然地,每个聊天消息单元格的行高会有很大差异。我已经正确计算了每个单元格的行高,并且 TableView 按预期执行。

但是,我想实现 estimatedHeightForRowAtIndexPath: 以在有很多消息的情况下加快性能。问题在于它会影响 scrollToRowAtIndexPath:atScrollPosition:Animated: 的滚动行为。

在我的 viewWillAppear 生命周期方法中,我告诉 Table View 向下滚动到最新消息(即底部消息),如果我不使用 estimatedHeightForRowAtIndexPath:,但一旦我这样做,似乎只有从此方法返回的值用于计算滚动位置,我最终处于错误的位置。

是否有可能在不影响滚动行为的情况下从使用 estimatedHeightForRowAtIndexPath: 的效率 yield 中获益?

最佳答案

UITableViewUIScrollView 的子类,所以方法

- (void)scrollRectToVisible:(CGRect)rect animated:(BOOL)animated

UIScrollView 可以帮助您实现您想要的

关于ios - estimatedHeightForRowAtIndexPath 的错误滚动位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28406044/

相关文章:

ios - 如何使用 AVAssetImageGenerator 立即获取远程视频的低质量缩略图

ios - 更改属性值为 True 的 UITableViewCell 文本颜色

ios - UITableViewCell 框架高度与 tableView 不匹配 :heightForRowAtIndexPath:

ios - 保持一些单元格高度不变,同时改变其他的

iphone - 如何获取 heightForRowAtIndexPath 中的 UITableViewCell?

ios - 如何从其他 swift 文件调用对象

ios - 应用程序上的深色模式开关

ios - 关于插入和删除单元格的 UITableView 动画问题

iphone - 在行编辑时在 UITableViewCell 中动态创建的 UIButton 不响应触摸事件

ios - 如果单元格是 UITableViewCell,我应该将单元格出队而不是分配它吗?