代码实现UICollectionView布局的步骤
1.导入数据
1.1 拖入plist文件
1.2 自定义构造方法(字典转模型)
1.3懒加载数据 (在需要的时候在加载数据)
2.创建UICollectiongView
2.1UICollectionView 把数据源的加载委托给了(dateSource)页面的布局需要layout对象 , 因此 uicollection的创建需要 布局对象layout 和 数据源(dateSrouce)
2.1 创建布局对象layout2.2 设置layout的属性 大小 最小Item的间距 和 行间距 距离屏幕的内间距UIEdgeInsetMake
2.3 创建控件 设置属性 添加到对应的控件中
3. 添加约束
3.1 首先取消 autoresizing
3.2 VFL语言 或是 第三方框架 Masony 添加约束
3.3 添加约束
4. 设置代理CollectionViewDateSource
4.1 实现代理方法 返回组
- (NSInteger)numberOfSectionsInCollectionView:(UICollectionView *)collectionView;4.2 返回 每组Item的个数
- (NSInteger)collectionView:(UICollectionView *)collectionView numberOfItemsInSection:(NSInteger)section;4.3 返回cell
- (UICollectionViewCell )collectionView:(UICollectionView ) collectionView cellForItemAtIndexPath:(NSIndexPath *)indexPath;在返回cell 中 定义标识
获取重用的cell
设置属性
返回cell
UICollectionView 的常见属性
@property (nonatomic, strong) UICollectionViewLayout *collectionViewLayout ;
布局对象
@property ( nonatomic , strong )UIView *backgroundView ;
背景图片,设置之后会自动的填充整个UICollectionView
@property ( nonatomic ) BOOL allowSelection ;
是否允许选中cell 默认允许选中
@property ( nonatomic) BOOL allowsMultipleSelection ;
是否可以多选 默认只是单选
@property ( nonatomic) CGFloat minimumInteritemSpacing ;
cell之间的最小行列距
@property ( nonatomic) CGFloat minimumLineSpacing ;
cell之间的最小行间距
@property ( nonatomic) CGSize itemSize ;
cell 的尺寸
@property ( nonatomic ) CGSize estimatedItemSize ;
cell的预估尺寸
@property ( nonatomic ) UICollectionViewScrollDirection scrollDirection ;
的滚动方向 ,默认是垂直滚动
@property ( nonatomic ) CGSize headerReferenceSize ;
HeaderView 的尺寸
@property ( nonatomic ) CGSize footerReferenceSize ;
FooterView 的尺寸
@property ( nonatomic ) UIEdgelnsets sectionlnset ;
分区的四边距
设置是否当元素超出屏幕之后固定页眉视图位置,默认NO
@property (nonatomic) BOOL sectionHeadersPinToVisibleBounds ;
设置是否当元素超出屏幕之后固定页脚视图位置,默认NO
@property (nonatomic) BOOL sectionFootersPinToVisibleBounds ;