我正在开发一个主要使用UITableView
的iOS应用程序。 它从服务器检索文章页面。我们有> 25000篇文章;所以我实现了一个拉到刷新和无限滚动浏览标题集合。 使用核心数据持续下载; NSFetchedResultsController
用于自动更新UITableView
。UITableView在更新NSFetchedResultsController时保持滚动位置正确
但是,我已经实现了无限滚动在两个方向;上和下。由于用户将被允许向下滚动25000个文章标题,所以我必须删除用户已经滚动的标题。如果用户向上滚动,我必须重新插入当前标题之上的标题。这样做,我在文章集合中有一个移动的窗口。
我使用部分和标题按日期组显示我的文章。
问题是,因为无限滚动在两个方向进行,我经常删除或添加文章在表中的较高位置。 Infact要实现这一点,我必须将谓词关联到NSFetchedResultsController
。
这个结果滚动被搞乱了。我已经让它跳回到它应该是ish的位置。这不是很好,因为它是一个跳跃(动画:NO),如果我将动画放在ON上,它会在返回到正确位置之前到处走动。这个位置并不完全是它应该是的。
我不知道我是否很好地解释了我的问题。我认为这个问题可能与我使用UITableView
的方式不同,但我不确定如何使用它来改善这一点。
干杯
我试图弄清楚这一点,迄今没有任何承诺。 – jessecurry
听起来我并不需要无限滚动(表视图支持很多行),除非实际需要数据来计算行高度。 –
你如何计算新的偏移量与旧的偏移量?听起来对我来说这是唯一的问题 –