文档章节

Objective-C --- - UICollectionView (梳理总结)

都英俊兮
 都英俊兮
发布于 2016/06/16 21:16
字数 210
阅读 70
收藏 0
oc

1准备

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]);

}

© 著作权归作者所有

共有 人打赏支持
都英俊兮
粉丝 2
博文 36
码字总数 11379
作品 0
深圳
iOS工程师
私信 提问
MIBadgeButton-Swift

MIBadgeButton 是使用 Swift 编写的徽章按钮,具有 UITableView/UICollectionView 的高性能。还有 Objective-C 版本的 MIBadgeButton。...

叶秀兰
2014/09/23
908
0
手机系统iOS11滑动UICollectionView崩溃的问题-[UICollectionViewData validateLayoutInRect:], /BuildRoot/Library/Caches/com.apple.xbs/Sources/UIKit/UIKit-3694.4.18/UICollectionViewData.m:447

今天同事遇到一个诡异的问题,在ios11版本的手机上滑动UICollectionView闪退,定位到错误信息-[UICollectionViewData validateLayoutInRect:], /BuildRoot/Library/Caches/com.apple.xbs/So...

不会开发的尬先生
2017/12/22
0
0
Objective-C 语言中的类类型

小菜鸟在学习使用UICollectionView的时候发现个函数: - (void)registerClass:(Class)cellClass forCellWithReuseIdentifier:(NSString *)identifier; 这个函数允许用户为不同的标示设置对应...

NextDay
2014/03/05
0
0
iOS 11 下 UICollectionView 出现滚动条被 HeaderView 遮挡的问题

iOS 11 下 UICollectionView 出现滚动条被 HeaderView 遮挡的问题 在使用了的 UICollectionView 页面中,滑动页面的时候滚动条会被 HeaderView 遮挡。导致滚动条看起来是断断续续的。 问题页...

宜铜铜
2017/10/21
0
0
Xcode插件: 编码效率神器 FlyCoding

FlyCoding - Xcode版 Element ⚠️ 请使用 Swift 4.2 编译 ⚠️ FlyCoding 是一个 Xcode 插件,使用苹果提供的插件机制编写,可以运行在最新的Xcode上, 它提供了类似于前端中 Emmet 的功能。...

SSBun
09/03
0
0

没有更多内容

加载失败,请刷新页面

加载更多

day152-2018-11-19-英语流利阅读-待学习

外媒看吴亦凡刷榜事件 Lala 2018-11-19 1.今日导读 近日,吴亦凡的专辑在国外陷入了刷榜风波,他的新专辑霸占了单曲榜前三名,并且前十名他占据了七席,力压美国乐坛巨星 Lady Gaga 和 A 妹,...

飞鱼说编程
21分钟前
2
0
开源 java CMS - FreeCMS2.8 微信管理 群发图文消息

项目地址:http://www.freeteam.cn/ 群发图文消息 管理员可以在这里群发图文消息 此列表只提取已审核并且带信息图片的数据! 选择需要群发的消息,点击“群发图文消息”按钮。 微信的限定: ...

freeteam
30分钟前
0
0
Beautiful Soup

定义 Python中的一个库,主要用于从网页爬取数据; 安装 pip install beautifulsoup4 四大对象 Beautiful Soup将复杂的HTML文档转换成树形结构,树中的每个节点都是Python对象,对象可归纳为...

村雨1943
41分钟前
3
0
Visual Studio 昨日发布新版本:增加实时同步编程、共同调试

多名开发者可以在同一个项目中编程,在编写代码和调试代码时只需发送一个 URL 网址,就能邀请他人参与协作,而且无需重新配置开发环境和安装任何附加包。该服务支持 Windows、Mac 与 Linux ...

linuxCool
44分钟前
4
0
发现一种不错的学习方法

这是在《软技能,代码之外的生存之道》所看到的一种学习方法,感觉这个理念不错,分享出来,共勉。 我的「十步学习法」 多年以来,我都承受着巨大的压力:快速学习新技术、新编程语言、新框架...

firepation
44分钟前
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部