2016-07-15 9 views
1

特定のコンテンツオフセットにスクロールする場合のUICollectionViewのセルのindexPathを知りたいと思います。たとえば、contentOffsetが{0,0}の場合、[0,1,2,3]のインデックスが表示されます。 contentOffsetが{0,100}の場合、[2,3,4,5]のインデックスが表示されます。それを行う簡単な方法は何ですか?UICollectionView内の特定のコンテンツオフセットに対してセルのインデックスパスを取得する方法は?

+0

あなたに言ったUICollectionViewLayoutAttributesクラスの配列を見つけるでしょうですセルが表示されている間にその情報を取得しようとしていますか?もしそうなら、UICollectionViewは 'NSIndexPath'の配列を返す' indexPathsForVisibleItems() 'メソッドを持っています。そうでない場合は、おそらく自分で計算することができます。すべてのセルが同じサイズであれば簡単にできます。 – daltonclaybrook

+0

なぜあなたはこれをしたいのか説明することができれば良いでしょう。あなたが間違った問題を解決しているように思えます。 – fishinear

+0

あなたのようなサウンドは、私が欲しいものを理解していません。私はあなたにいくつかの詳細を教えます。オフセット{0,0}を使用しているときにオフセット{0,100}にスクロールするとどのインデックスが表示されるかを知りたいのですか? indexPathsForVisibleItems()は私が望むものではありません。このメソッドは、indexPathsForContentOffset()のようになります。 –

答えて

1

答えが見つかりました。重要なメソッドは、collectionViewLayoutプロパティです。あなたが特定のコンテンツにスクロールあれば見ることができますindexPathsのどの検索したいのであれば、あなたが呼び出す必要がありオフセット:

[self.collectionView.collectionViewLayout layoutAttributesForElementsInRect:CGRectMake(0, target.y, scrollView.width, scrollView.height)]; 

あなたはindexPath

関連する問題