博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Objective-C --- - UICollectionView (梳理总结)
阅读量:5977 次
发布时间:2019-06-20

本文共 1898 字,大约阅读时间需要 6 分钟。

  hot3.png

1准备

211157_R07H_2721020.png

2.设置CollectionView

//    FlowLayout布局

    UICollectionViewFlowLayout *layout = [[UICollectionViewFlowLayout alloc]init];

    //设计方向

//    layout.scrollDirection = UICollectionViewScrollDirectionHorizontal;    

    _collectionView = [[UICollectionView alloc]initWithFrame:[UIScreen mainScreen].bounds collectionViewLayout:layout];

    [self.view addSubview:_collectionView];    

//    设置代理

    _collectionView.delegate = self;

    _collectionView.dataSource = self;    

//    注册cell

    [_collectionView registerClass:[UICollectionViewCell class] forCellWithReuseIdentifier:kCellID];

//    背景颜色默认为黑色

    _collectionView.backgroundColor = [UIColor whiteColor];

3.实现代理方法(常用的几个举例)

//cell个数

-(NSInteger)collectionView:(UICollectionView *)collectionView numberOfItemsInSection:(NSInteger)section{

    return [self.dataList[section] count];

}

//cell组数

-(NSInteger)numberOfSectionsInCollectionView:(UICollectionView *)collectionView{

    return [self.dataList count];

}

//cell大小

-(CGSize)collectionView:(UICollectionView *)collectionView layout:(UICollectionViewLayout *)collectionViewLayout sizeForItemAtIndexPath:(NSIndexPath *)indexPath{

    return CGSizeMake(kWidthOfCell, kWidthOfCell);

}

//cell之间的距离 系统会根据数值自动调节

-(UIEdgeInsets)collectionView:(UICollectionView *)collectionView layout:(UICollectionViewLayout *)collectionViewLayout insetForSectionAtIndex:(NSInteger)section{

    return UIEdgeInsetsMake(5, 5, 5, 5);

}

 

//cell的关键代理

-(UICollectionViewCell*)collectionView:(UICollectionView *)collectionView cellForItemAtIndexPath:(NSIndexPath *)indexPath{

    UICollectionViewCell *cell = [collectionView dequeueReusableCellWithReuseIdentifier:kCellID forIndexPath:indexPath];

    cell.contentView.backgroundColor = [UIColor greenColor];

    

    return cell;

}

//点击cell触发的代理

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

    NSLog(@"%@",self.dataList[indexPath.section][indexPath.item]);

}

转载于:https://my.oschina.net/adso/blog/693126

你可能感兴趣的文章
ActionResult,PartialViewResult,EmptyResult,ContentResult
查看>>
关于泛型类,泛型接口,泛型函数
查看>>
@pathvariable和@RequestParam的区别
查看>>
测试驱动开发
查看>>
C++操作符重载
查看>>
Redis实现分布式锁2
查看>>
【Udacity】线性回归方程 Regression
查看>>
前端架构设计1:代码核心
查看>>
RPC 框架通俗解释 转自知乎(洪春涛)
查看>>
获取cookie后,使用cookie进行接下来的自动化操作
查看>>
算法笔记--数论模板小集(待增)
查看>>
SASS初学者入门(转)
查看>>
C语言100个算法经典例题(七)
查看>>
轻松实现远程批量拷贝文件脚本(女学生作品)
查看>>
Nmap在pentest box中的扫描及应用
查看>>
测试组合索引
查看>>
四、物理优化(2)索引视图
查看>>
【沟通之道】头脑风暴-女人的心思你别猜
查看>>
钱趣多风控新举措:源头选择与物理隔离
查看>>
puppet最新源码包安装学习笔记
查看>>