UICollectionView分页在2 ^ 24像素后中断

时间:2013-06-22 01:34:25

标签: ios ipad uicollectionview uicollectionviewlayout

设置

我有一个UICollectionView,允许用户翻阅图片,12页到页面。应用程序中应该有超过200,000张图片。我不希望用户滚动到页面20,000,因此可以跳转到某个页面。

问题

在横向方向上,分页会在第16,385页分解。集合不再适应页面边界。如果您在第16,384页之前返回,您可以让它重新开始工作,但没有超过16,385页的页面。

我的代表也会在错误出现时停止收到scrollViewDidEndDecelerating:消息。

假设

横向方向的第16,385页恰好从像素16,777,216开始,恰好是2 ^ 24。我认为UICollectionViewUIScrollView中的某些内容突破了2 ^ 24。

这只是一个无证件限制吗?我运气不好吗?

示例

我上传了project来证明问题。 Here's相关视图控制器。如果您摇动iPad或模拟器,您将被带到第16,384页,在错误出现之前的一页。

snark

如果您认为用户不需要能够转到第20,000页,那就太酷了。我不认为这与这个问题有关。

3 个答案:

答案 0 :(得分:2)

我会说这是一个未记录的限制,并会提交一份Radar错误报告,附上示例项目作为证据。如果您正在寻找替代方法,可以尝试将UIPageViewController与每个页面的集合视图一起使用。您可以选择滑动动画,而不是默认的iBooks-esque动画,并非常密切地复制示例项目。

答案 1 :(得分:0)

您可以加载说10,000页,当用户跳转时,加载适当不同的10,000页。

答案 2 :(得分:0)

我想知道您是否尝试过使用多个部分?是每个部分的限制还是整个简历?