Sobes.tech
Junior — Middle

El tudná magyarázni, hogy mit értünk a Compositional Layout fogalma alatt, és hogyan használják?

sobes.tech MI

Válasz az MI-től

A Compositional Layout egy modern módszer összetett és rugalmas elrendezések létrehozására az iOS UICollectionView-ben, amelyet az Apple a iOS 13-tól kezdve mutatott be.

Lehetővé teszi a gyűjtemény szerkezetének leírását hierarchiák, szekciók, csoportok és elemek segítségével, ahol minden rész saját méretekkel, margókkal és irányultsággal rendelkezhet. Ez megkönnyíti összetett felületek létrehozását különböző cellatípusokkal és elrendezésekkel anélkül, hogy manuálisan kellene pozíciókat számolni.

Használati példa:

let itemSize = NSCollectionLayoutSize(widthDimension: .fractionalWidth(1.0),
                                      heightDimension: .fractionalHeight(1.0))
let item = NSCollectionLayoutItem(layoutSize: itemSize)

let groupSize = NSCollectionLayoutSize(widthDimension: .fractionalWidth(1.0),
                                       heightDimension: .absolute(44))
let group = NSCollectionLayoutGroup.horizontal(layoutSize: groupSize, subitems: [item])

let section = NSCollectionLayoutSection(group: group)

let layout = UICollectionViewCompositionalLayout(section: section)
collectionView.collectionViewLayout = layout

Így a Compositional Layout egy erőteljes és deklaratív eszközt kínál az alkalmazkodó és összetett gyűjtemények építéséhez.