Skip to content

UICollectionViewFlowLayout

UICollectionViewFlowLayoutUICollectionViewLayout的常用子类,用于按行列流式排布cell。插件场景优先使用固定itemSize/sectionInset/minimumLineSpacing方案。

  • 更稳定的创建路径是:先创建UICollectionViewFlowLayout,再用UICollectionViewController.initWithCollectionViewLayout(layout)拿到collectionView
  • initWithFrame:collectionViewLayout:在当前桥接里不稳定,不建议作为主路径。
  • 动态尺寸回调例如sizeForItemAtIndexPath在JS桥接里风险较高,后置。
属性类型说明
itemSizeCGSize单个item尺寸。
sectionInsetUIEdgeInsetssection内边距。
minimumLineSpacingnumber最小行间距。
minimumInteritemSpacingnumber最小item间距。
headerReferenceSizeCGSize头部参考尺寸。
footerReferenceSizeCGSize尾部参考尺寸。
invalidateFlowLayoutAttributesboolean只读。布局属性是否失效。
invalidateFlowLayoutDelegateMetricsboolean只读。delegate度量是否失效。
方法参数返回值说明
invalidateLayout()void标记布局失效并触发重算。
prepareLayout()void布局准备阶段。
layoutAttributesForElementsInRect(rect)rect: CGRectNSArray返回区域内元素布局属性。
collectionViewContentSize()CGSize返回内容尺寸。
成员返回值说明
layoutAttributesClass()Class返回布局属性类。
invalidationContextClass()Class返回失效上下文类。
  • 创建成功但不显示时,优先检查frame/bounds是否为0、itemSize是否为0、是否已挂到可见view层级。
  • registerClass...缺失或reuseId不一致会导致dequeue失败。
头文件 API 清单

正在加载…

协议:,来源: