2016-07-06 157 views
2

我已經導入了UICollectionViewDelege,UICollectionViewDatasource和UIScrollViewDelegate。UICollectionView不能調用scrollViewDidScroll - Swift

我已經將我的集合視圖委託和數據源設置爲self。

但scrollViewDidScroll沒有被調用,我的滾動視圖變得水平,如果這有所作爲?

爲什麼scrollViewDidScroll不被調用,如果集合視圖使用裏面的滾動視圖?

回答

0

UICollectionView繼承自UIScrollView。您不需要添加UIScrollViewDelegate。刪除它並添加UICollectionViewDelegate。這可能會解決您的問題。

+0

nope不做任何事情,我已經設置了代表和內容大小,但沒有調用。 Iv完成了所有的步驟和互聯網說iv完成了它只是沒有調用的所有東西 – Eli

0

我也遇到過這個問題。我首先通過在代理故事板中將代理設置爲self,然後scrollViewDidScroll沒有被調用(但像collectionView willDisplayCell這樣的函數是按預期的那樣)。在玩過一段時間後,我發現設置代理以編程方式解決了這個問題。

+0

同樣的問題在這裏。我在IB中設置了我的委託和數據源,但是scrollViewDidScroll()不會觸發。 即使我在代碼中設置它們,問題仍然存在。 –

1

我在動的形式迅速2迅速3,哪些訣竅是:

SWIFT 2:

public func scrollViewDidScroll(scrollView: UIScrollView) 

到SWIFT 3:

public func scrollViewDidScroll(_ scrollView: UIScrollView) 

所以基本上「_」下劃線完成了這個訣竅。令人討厭的是,swift編譯器並沒有抱怨!

至於繼承UICollectionViewDelegate應該做的伎倆。

相關問題