ios – UITableView在更新NSFetchedResultsController时将滚动保持在正确的位置

前端之家收集整理的这篇文章主要介绍了ios – UITableView在更新NSFetchedResultsController时将滚动保持在正确的位置前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在开发一个主要使用UITableView的iOS应用程序.
它从服务器检索文章页面.我们有> 25000篇文章;所以我实现了一个pull-to-refresh和无限滚动来遍历标题集.
下载的内容使用核心数据保留; NSFetchedResultsController用于自动更新UITableView.

但是,我实现了无限滚动在两个方向;上和下.由于用户将允许向下滚动25000篇文章标题,因此我必须删除用户已滚动的文章.如果用户向上滚动,我必须重新插入当前标题之上的标题.
这样做,我在文章集合中有一个移动窗口.

我使用节和标题按日期组显示我的文章.

问题是因为无限滚动是双向的,所以我经常在表格的较高位置删除添加文章.
实际上,我必须更改与NSFetchedResultsController相关联的谓词.

滚动被混乱的结果.我已经让它跳回到它应该是ish的位置.这不是很好,因为它是一个跳跃(动画:否),如果我把动画打开,它会在回到正确的位置之前四处走动.而且这个位置并不完全是应该的位置.

我不确定我是否很好地解释了我的问题.我认为问题可能在于我使用UITableView的方式,但我不确定如何使用它来使这更好.

干杯

解决方法

如果您只在Core Data中存储文章标题,我认为它可以处理25.000个标题.

但是我认为你遇到的问题是表格的可见元素的分页

这是我用来处理你要求的东西的link.您将不得不稍微调整一下以使用Core Data和远程源.

如果可以,请发布一些代码,以便我们查看.

猜你在找的iOS相关文章