2016-07-06 13 views
2

私はUICollectionViewDelege、UICollectionViewDatasourceおよびUIScrollViewDelegateをインポートしました。UICollectionViewがscrollViewDidScrollを呼び出さない - Swift

自分のコレクションビューのdelegateとdatasourceをselfに設定しました。

scrollViewDidScrollは呼び出されていませんが、スクロールビューが水平になっていれば違いがありますか?

コレクションビューでスクロールビューを使用すると、scrollViewDidScrollが呼び出されないのはなぜですか?

答えて

0

UICollectionViewUIScrollViewを継承します。 UIScrollViewDelegateを追加する必要はありません。それを取り出してUICollectionViewDelegateを追加してください。これにより、問題が解決する可能性があります。

+0

何もしません、私はすでにデリゲートとコンテンツサイズが設定されていますが、その呼び出しはありません。 Ivはすべての手順を完了し、インターネットは静かだと言っているすべてのことをしていると言っています – Eli

0

この問題も発生しました。私は、デリゲートをストーリーボードの中で自分自身に設定することから始めました。その時点で、scrollViewDidScrollは呼び出されませんでした(しかし、期待通りに、collectionView willDisplayCellのような機能が呼び出されました)。私が周りに遊んだ後、私は、デリゲートを設定することがプログラムで問題を修正したことに気がつきました。

+0

同じ問題がここにあります。デリゲートとデータソースの両方をIBに設定していますが、scrollViewDidScroll()は起動しません。 コードで設定しても問題は解決しません。 –

1

私は、迅速な3にフォームの迅速な2を動いていたし、どのようなトリックをやったことは以下の通りです:

SWIFT 2:

public func scrollViewDidScroll(scrollView: UIScrollView) 

SWIFT 3:したがって、基本的

public func scrollViewDidScroll(_ scrollView: UIScrollView) 

"_"はそのトリックを強調した。迷惑なのは、迅速なコンパイラがそれについて不平を言っていないということです!

相続については、UICollectionViewDelegateがすべきことです。

関連する問題