CollectionView自定义布局
在iOS上添加UITableView,在UICollectionView上添加UITableView。 在UICollectionView中使用网格,在UI中使用UI。 UIKitViewKit的UICollectionViewFlowLayout布局,UICollectionViewLayout的自定义视图。
Apple的自定义布局自定义布局流的布局。 (UICollectionViewFlowLayout中的对象列表)
在UICollectionView中添加UICollectionViewLayout在UICollectionViewLayout中。 그래서适用于iOS的Collection View编程指南핵심API와属性와정정해보았다。
UICollectionViewLayoutAttributes
- CollectionViewLayout和UICollectionViewLayoutAttributes一起显示。 (框架,中心,位置,zIndex등)
- 본적인용하는게。。。。있다。 (레이아웃반복적으로반복적으것은이많은이비용。)
필수적으로불리는API및属性
- prepareLayout
- conentSize属性
- layoutAttributesForElementsInRect
prepareLayout
- 초기계산을회를기회를제공
- 在UICollectionViewLayoutAttributes中获取结果。 (캐싱)
- 이부분에서로캐싱하는식으성능상좋음。 (매번属性호출시있음있음있음있음)
contentSize
- 스크롤할지지정할있음。
- flowLayout下载스한쪽방향으이아님。
layoutAttributesForElementsInRect
- prepareLayout음에음에음에호출되는함수
- 반환(반환사이즈)
- 필요함사각형과교차되는지를반환이반환이필요함。
layoutAttributesForItemAtIndexPath
- 요청함기주로개별레이아웃객체에기주로적으。
- 例如)삭및제시에시에이션정보
initialLayoutAttributesForAppearingItem
- cell이보여질때기초지정해줄속성을。
- 이통해서插入애니메이션을수있음。
finalLayoutAttributesForDisappearingItemAtIndexPath
- cell사라질때지정해줄수。
- 删除애니메이션을션을수。
invalidateLayout
- 레이아웃을기초(업데이트할기수제공)
- 이는레이아웃에지이지데이터를다시정설아님。 (reloadData와다름)
targetContentOffsetForProposedContentOffset:withScrollingVelocity:
- 함마막막막막함정함。
- 크롤시스통해서지지정해있음있음있음
CustomLayout설정방법
- 故事板에서collectionView의布局类를변경
- collectionView.collectionViewLayout =커스텀레이아웃
请参见UICollectionViewLayout和API。 下载CustomLayout应用程序。
[이미지출처] https://developer.apple.com/library/archive/documentation/WindowsViews/Conceptual/CollectionViewPGforIOS/CreatingCustomLayouts/CreatingCustomLayouts.html#//apple_ref/doc/uid/TP40012334-CH5-SW1