2017-12-04 13 views
0

그래서 UICollectionViews는 컬렉션 뷰에 포함 된 셀에 액세스 할 수있는 cellForItem(at:) 메서드를 제공합니다.UICollectionView는 cellForItem (at :)이 호출 될 때 후드에서 dataSource를 사용합니까?

또한 collectionView는 셀을 만들고 구성하기 위해 데이터 소스의 collectionView(_:cellForItemAt:) 메소드를 사용합니다.

그러나 중단 점을 사용하면 cellForItem(at:)을 호출 할 때 collectionView(_:cellForItemAt:)이 호출되지 않습니다. 무슨 일 이니? 반환 할 셀을 알기 위해 컬렉션 뷰가 해당 데이터 소스에 액세스해야합니까? 어떤 시점에서 모든 셀을 캐싱하고 있으며 캐싱이 언제 발생합니까?

답변

1

cellForItem(at:)은 셀이 화면에 없으면 nil을 반환하므로 collectionView(_:cellForItemAt:)을 호출하여 셀을 가져올 필요가 없습니다. 화면에 있으면 셀을 반환하고 그렇지 않으면 nil을 반환합니다.