ios - 表中的 NSFetchedResultsController 和 scrollToBottom

标签 ios swift uitableview core-data

我将 NSFetchedResultsControllerUITableView 一起使用。我需要像 iMessage 一样进行聊天,从上到下按顺序发送消息。我需要滚动到 UITableView 底部以显示最后一条消息

tableView.scrollToRowAtIndexPath(lastMessageIndexPath, atScrollPosition: UITableViewScrollPosition.None, animated: false)

但是当我滚动我的 UITableView 时,方法 tableView:cellForRowAtIndexPath: 调用 fetchedResultsController 中的所有消息。我认为是因为这个,并且有一个很长的opening viewController

请帮我解决这个问题,并加速打开viewController

最佳答案

不滚动,只设置内容偏移,不带动画。至少需要确定每个单元格的高度,但不需要为每一行加载单元格本身。

请注意,大多数以这种方式显示的应用程序不会在最近的历史记录中包含所有旧消息,它们只会有几页,如果您向上滚动太远,它们将需要去加载那些较旧的消息。这种方法存在边界和加载问题。

关于ios - 表中的 NSFetchedResultsController 和 scrollToBottom,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37195488/

相关文章:

ios - UIPageViewController 作为 subview 将禁用 iOS 中的主视图事件

ios - Swift:通过 Facebook 应用捕获 Facebook 登录事件

swift - 许多目标中的相同扩展

ios - 如何制作自定义标题然后图像描述属于该标题并且在 TableView 中进行相同的过程

c# - MonoTouch 对话框的 UITableView。如何处理水龙头?

iphone - 推送 UIViewController 时如何更改 TabBarItens?

ios - iPhone 获取所有没有私有(private)库的 SSID 列表

ios - 如何在 swift 4 中设置对 collectionView 的关注?

arrays - 如何从 Swift ArraySlice 中获取第 i 个元素?

ios - swift3 中的表格 View 单元格