UICollectionViewCompositionalLayout은 UICollectionView의 레이아웃을 구성하는 여러 방식 중 하나일 뿐임
필자는 테이블뷰, 컬렉션뷰 처럼 독자적인 하나의 뷰 인줄 알았음 ****
UICollectionView는 셀을 나열할 때 "레이아웃 객체"를 사용collectionView.collectionViewLayout = ...
여기서 collectionViewLayout은 UICollectionViewLayout 타입이고,
우리는 여기에 셀의 배치를 어떻게 할지를 지정하는 Layout 객체를 넣어줍니다.
| 레이아웃 종류 | 설명 | 사용 시기 |
|---|---|---|
UICollectionViewFlowLayout |
기본 레이아웃. 셀을 줄 단위로 나열 (가로/세로) | 단순 리스트, 격자 |
UICollectionViewCompositionalLayout |
복잡한 레이아웃도 가능. 섹션마다 다르게 구성 가능 | 넷플릭스, 티빙, 앱스토어 UI |
UICollectionViewLayout (커스텀) |
직접 수학적으로 셀 위치 계산 | 원형 배치, 물리 기반 레이아웃 등 특수한 경우 |
UICollectionViewFlowLayout (기본)let layout = UICollectionViewFlowLayout()
layout.scrollDirection = .vertical
collectionView.collectionViewLayout = layout
tableView처럼 수직 리스트 만들기 좋음UICollectionViewCompositionalLayoutcollectionView.collectionViewLayout = UICollectionViewCompositionalLayout { sectionIndex, env in
return someLayout
}