2015/10/21 UICollectionViewController 使用

学习UICollectionViewController的使用。

1.在创建的时候首先需要告诉控制器cell以什么样式显示 ,重写init初始化,在init方法中 UICollectionViewFlowLayout 控制cell的间距,大小,内边距

    需要使用UICollectionViewDelegateFlowLayout 代理方法

- (instancetype)init

{

    // 1.流水布局

UICollectionViewFlowLayout *layout =

[[UICollectionViewFlowLayout alloc] init];

    // 2.每个cell的尺寸

    layout.itemSize = CGSizeMake(80, 80);

    // 3.设置cell之间的水平间距

    layout.minimumInteritemSpacing = 0;

    // 4.设置cell之间的垂直间距

    layout.minimumLineSpacing = 10;

    // 5.设置所有cell组成的一个整体与屏幕(ViewController)四周距离

layout.sectionInset =

UIEdgeInsetsMake(layout.minimumLineSpacing, 0, 0, 0);

    return [super initWithCollectionViewLayout:layout];

}

2.在cell的创建时候,需要在界面初始化的时候告诉控制器cell的ID是多少,使用那一种cell,是自定义的,还是xib的 还是系统的。

1)注册cell(告诉collectionView将来创建怎样的cell)

[self.collectionView registerClass:[UICollectionViewCell class]

forCellWithReuseIdentifier:@"product"];

在调用- (UICollectionViewCell *)collectionView:(UICollectionView

*)collectionView cellForItemAtIndexPath:(NSIndexPath *)indexPath;设置每个单元格显示的内容(UICollectionViewCell)之前必须注册cell,一般在viewDidLoad中调用上面方法注册cell。

例如:

- (void)viewDidLoad

{

    [super viewDidLoad];

   

    // 1.注册cell(告诉collectionView将来创建怎样的cell)

    UINib *nib = [UINib nibWithNibName:@"MJProductCell" bundle:nil];

[self.collectionView registerNib:nib forCellWithReuseIdentifier:

MJProductCellID];//通过xid自定义的cell

    /*

[self.collectionView registerClass:[UICollectionViewCell class] forCellWithReuseIdentifier:MJProductCellID];//使用默认的UICollectionViewCell

*/

3.cell跟tabview的区别还有一点是  cell的行是 indexPath。row

                                                       UICollectionViewCell的行是    indexPath。item

  


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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值