UICollectionView的简单介绍

一.
1.UICollectionView默认的背景颜色是黑色.
2.注意 使用UICollectionView.第一步先设置背景颜色.
3.显示内容,UITableView相似
二.
1.设置数据源代理
2.代码设置 view.dataSoure=self
2.1拖线
2.2实现数据源的协议
3.实现方法

UICollectionView它的Cell默认只能从原型cell中进行加载

3.对item设置的时候一定要注意:
一行上展现的item的个数,它是由系统计算获取的,没有办法进行具体个数设置,在设置属性的使用Cell Size 和MinSpacing 设置一定要谨慎
这里设置的是MinSpacing 因为这个间距会根据一行展现控件的个数而变化
在开发中如果使用UICollectionViewCell.设置间距和CellSize的时候,按照最小的尺寸的屏幕进行设定,开发中按照3.5英寸进行设定

4.代码方式创建
注意点: 在UITableView 中创建的时候分为普通样式和分组样式,这个样式是在初始化的时候就已经设定了
在UICollectionView同样的道理,它也有自己的样式,并且必须在初始化的时候进行设定.
默认UICollectionView它的样式是通过layout进行设定,layout中默认有俩种样式 follow 流水 custom 自定义

必须在初始化的时候,进行设置layout

UICOllectionView*collectionView=[[UICollectionView alloc]initWithFrame:CGRectZero collectionViewLayout:flowlayout];

4.1注册Cell
[collectionView registerClass:[UIColectionViewCell Class]forCellWithReuseIdentifier];

4.2Celld 设置,是通过layout进行设置的
设置cell的大小

flowLayout.itemSize=CGSizeMake(100.100);

设置距离屏幕的间距

flowLayout.sectionInset=UIEdeInsetsMake(10,10,10,10);

设置item与item之间的间距

flowLayout.minmumInteritesmSpacing=10;

设置行与行之间的间距

flowLayout.minimumLineSpacing=30;

UICollectionView 它行间距以及item间距没有代理方法设置,只能通过layout的属性进行设置在初始化的时候就固定了,后面没有办法动态改变.
5.使用xib的方式创建cell 需要掌握的知识
5.1注册xib文件

UINib*nib=[UINib nibWithNibName:@"AbcollectionViewCell" boune:[NSBundle mianBUdle]];

第一个参数:代表nib文件的名字
第二个代表路径:只需要把mainBundle给它就可以了.

[self.collectionView registerNib:nib forCellWithRuseIdentifier:reuseId];

第一个参数 根据一个NIb文件的名字获取一个UINib的对象
第二个参数 重用的标识
4.2 xib中设置cell的宽和高是无效的
需要通过layout进行设置 itemSize.

4.3item的点击事件的响应
事件响应,在delegate代理中

 - (void)collectionView:(UICollectionView *)collectionView didSelectItemAtIndexPath:(NSIndexPath *)indexPath;

4.4collectionView的滚动方向,只能设置一个方向,不能设置多个方向
item的排列方式,受collectionView的滚动方向所影响
设置最小的间隔minSpacing 也受滚动方向影响
垂直滚动,头标签和尾标签 宽度无效果->屏幕的宽
水平滚动,头标签和尾标签 高度无效果->屏幕的高度

4.5设置按钮的点击状态
让collectionView中的item不可以点击

self.collectionView.allowsSelection=YES;

让多个item响应点击

self.collectionView.allOWsMultipleSelection=YES;

5页头和页尾(组头和组尾)
1.组头组尾,使用的是同一个控件UICollectionReuseableView
2.默认高度起作用,但是控件的属性都没有任何作用

想要使用,需要实现UICollectionView的数据源方法

- (UICollectionReusableView *)collectionView:(UICollectionView *)collectionView viewForSupplementaryElementOfKind:(NSString *)kind atIndexPath:(NSIndexPath *)indexPath

3.使用的时候注意
头尾需要进行设置重用标识,而标识 是不一样的,所以要根据头尾的标识 进行判读.
会用到下面俩个代码的想要找到kind 需要到UICollectionViewFlowLayout类中 最上方查找
NSString *const UICollectionElementKindSectionHeader
NSString *const UICollectionElementKindSectionFooter
;

4.头和尾,是自动重用的,根据一个标识
5.传人数据,需要注意:声明属性的方法,这个方法只有一个参数,而在UICollectionResuableView中,设置数据需要知道头尾,所以要传人俩个参数,所以这里只能定义方法,不能定义成员属性,

6.自定义的UIView 要继承自UICollectionReuseableView

7.代码创建控件注意:
1.注意要注册Class
2.重写初始化方法的关键,在于系统初始化控件会调用那个方法
3.在UICollectionView中注册的Cell 与使用的匹不匹配
4.要注意,在自定义控件中不能使用autolayout约束,否则会导致外面组的insets出问题 在cell中不能使用autolayout约束

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值