https://developer.apple.com/documentation/uikit/uicollectionviewcompositionallayoutconfiguration
"An object that defines scroll direction, section spacing, and headers or footers for the layout."
레이아웃에서 스크롤 방향, 섹션 간격, 헤더 혹은 footer를 정의하는 객체입니다.
@MainActor class UICollectionViewCompositionalLayoutConfiguration : NSObject
컬렉션 뷰 레이아웃의 기본값 스크롤 방향, 레이아웃 섹션 사이의 간격, 전체 레이아웃에 대한 헤더 혹은 footer를 수정하기 위해 레이아웃 설정을 사용할 수 있습니다.
UICollectionViewCompositionalLayout
을 생성할 때 이 설정을 전달하거나 기존 레이아웃에 설정 속성을 설정할 수 있습니다. 기존 레이아웃에서 설정을 수정하는 경우 시스템은 새 설정으로 업데이트될 수 있도록 레이아웃을 무효화합니다.
let headerFooterSize = NSCollectionLayoutSize(widthDimension: .fractionalWidth(1.0),
heightDimension: .estimated(44))
let header = NSCollectionLayoutBoundarySupplementaryItem(layoutSize: headerFooterSize,
elementKind: "header",
alignment: .top)
let footer = NSCollectionLayoutBoundarySupplementaryItem(layoutSize: headerFooterSize,
elementKind: "footer",
alignment: .bottom)
let config = UICollectionViewCompositionalLayoutConfiguration()
config.interSectionSpacing = 20
config.scrollDirection = .horizontal
config.boundarySupplementaryItems = [header, footer]