2013-07-16 173 views
1

我有示出基于数据源1000+细胞中的CollectionView。 collectionview在任何给定的时间显示6个单元格。现在,基于一些用户操作,我需要滚动的CollectionView到另一个NSIndexPath但是当我尝试这样做,UICollectionView,滚动到某一细胞不能在屏幕

[self.collectionView scrollToItemAtIndexPath:newIndexPath atScrollPosition:UICollectionViewScrollPositionCenteredVertically 
            animated:NO]; 

我得到这个错误:

Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: 
    'attempt to scroll to invalid index path: <NSIndexPath 0x11b42e70> 2 indexes [1, 163]' 

我认为这个错误发生,因为这indexpath不在屏幕上,或尚未加载。

两个问题:

1:我的假设是否正确?或者这个错误是别的? 2:如果我的假设是正确的,我能做些什么来解决它?:)

感谢

+1

你的假设指数是不正确的。您是否想要在仅有1个部分的集合视图中滚动到第1部分(这是第*个*部分)?你还可以添加如何创建'newIndexPath'? – jszumski

+0

老兄,你知道了,我把它改成0节,就是这样。谢谢。 – funkycoldmedia

+0

我会将其添加为答案,因此此问题未标记为未答复。 – jszumski

回答

2

你滚动到集合视图不存在的部分。如果您打算滚动到首节,记得他们是从0