2016-10-18 34 views
0

您能否假設collectionView:cellForItemAtIndexPath:何時會被調用?我有一個UICollectionView其中每個單元格與集合視圖大小相同。大多數細胞在它們變得可見時就會出列。然而,有時候,collectionView:cellForItemAtIndexPath:不僅會被調用,而且還會被調用到下一個索引路徑(同時)。例如,如果我目前看到索引5,並開始滾動,但是6和7將會出列。cellForItemAtIndexPath何時被調用?

方式collectionView:cellForItemAtIndexPath:被調用記錄在某處,或者我們不應該假設任何經常性功能嗎?

+0

據我所知,除了「需要細胞時」之外,你不能說任何其他的東西。 – Paulw11

回答

2

還是我們不應該承擔任何經常性的功能

這是正確的。我可以列出一些你可以撥打的電話,會導致被撥打,但那不是重點。關鍵是你的工作是隨時準備好,迅速準確地回答這個問題。運行時會盡可能多地調用它認爲可能需要的值,以便顯示當前的一組單元格,並儘可能平滑地進行未來滾動。正如一些詩人所說:「這就是你所知道的,你需要知道。」

+0

另外,您是否知道iOS 10具有集合視圖單元「預取」功能?所以這是_expected_行爲。 – matt

+0

我不知道這一點,謝謝馬特。 –

相關問題