2016-07-20 3 views
0

「scrollToItemAtIndexPath」メソッドを呼び出すことで、UICollectionViewでアニメーションを終了した後に何かしたいのですが、どれくらい時間がかかるかわかりません。どんなドキュメンテーションにも言及した?アニメーション化された場合、「scrollToItemAtIndexPath」メソッドはどのくらい時間がかかりますか?

PS.私が知っているのは、遅延(おそらく1秒/ 2秒)のあるものは回避策です。

ありがとうございます。

答えて

3

UICollectionViewはUIScrollViewのサブクラスであり、UICollectionViewDelegateはUIScrollViewDelegateに準拠しています。したがって、UICollectionViewデリゲートのscrollViewDidEndScrollingAnimation:メソッドを使用することができます。

+0

お返事ありがとうございます。別の問題にぶつかり、次の2つの状況をどのように伝えることができますか?1、ターゲットアイテムは完全に可視です.2、ターゲットアイテムは部分的に表示されますか? 'scrollViewDidEndScrollingAnimation'メソッドはスクロール後にのみ呼び出されるため、ターゲットアイテムが既に表示されている場合は何も起こりません。 – CoderWang

+0

この場合、scrollToItemAtIndexPathを呼び出す前に、[collectionView visibleCells]にスクロールする特定のセルが既に含まれているかどうかを確認できます。はいの場合は、何かをしてください。いいえの場合、アニメーションがトリガーされ、scrollViewDidEndScrollingAnimationが呼び出されます。 –

+0

私は既にcheckメソッドを追加しましたが、ターゲットアイテムが完全に表示されるように '何かをしたい'とし、ターゲットアイテムがパーティーで表示されている間に 'scrollToItemAtIndexPath'を呼び出したいとします(collectionView.visibleCellsの1つで、 YES)は 'scrollViewDidEndScrollingAnimation'をトリガーしません。状況を扱うためにダブルチェックで回避策を見つけたので、私はあなたに答えを受け取ります。 – CoderWang

関連する問題