美文网首页Ios首页投稿(暂停使用,暂停投稿)iOS Developer
iOS开发基础:UICollectionView 基本使用-纯代

iOS开发基础:UICollectionView 基本使用-纯代

作者: 溪石iOS | 来源:发表于2016-08-03 11:34 被阅读1253次

UICollectionView 可以看做 UITableView 的升级版,这里介绍其基本的使用方法,为复杂的视图打好基础。

新建一个iOS 项目

打开模板自动生成的 ViewController.m 文件,添加 UICollectionView 成员变量
声明数据源 UICollectionViewDataSource 和 代理 UICollectionViewDelegate


初始化 collectionView,指定其 CollectionViewLayout 为 UICollectionViewFlowLayout

这是UICollectionView 与 UITableView 最大的不同:用 UICollectionViewLayout 单独控制 cell 的展示形态,如大小、滚动方向等,本例用框架提供的 UICollectionViewFlowLayout,我们可以直接继承UICollectionViewLayout,打造自己需要的布局样式。

注册单元格的类型为 UICollectionViewCell

如果子类化 UICollectionViewCell,这里可指定对应类。

实现数据源的“三大问题”:

  1. 有多少个章节(Section),如果省略,默认为1


  2. 每个章节中有多少个单元格(Cell)
    注意,这里返回的是每个章节的单元格数量,当有多个章节时,需要判断 section 参数,返回对应的数量。


  3. 实例化每个单元格


使用 dequeueReusableCellWithReuseIdentifier 方法获得“复用”的单元格实例
返回的 cell 依赖第5步中注册单元格类型,识别符 “DemoCell”也需要与第5步中一致,否则,这里将返回 nil,导致崩溃。
这里可以配置每个单元格显示内容,如单元格标题等。

编译运行后可看到一个基本的 CollectionView 已经显示,并有 10 个单元格。

相关文章

网友评论

  • WS_0909:你的代码字体号是什么
    溪石iOS:@WS_0909 monaco - 12
  • OnlyOneCap:楼主这个不是原创吧,也不写清楚语言的版本。做公众号走点心啊。
    OnlyOneCap:@溪石iOS 原来如此,抱歉。在几个地方看到这篇文章。
    溪石iOS:@RoadToCardiff 本人老文章了,觉得还有价值,故发此处
  • Thebloodelves:过了一篇基础,挺好的
  • 溪石iOS:简单,好用

本文标题:iOS开发基础:UICollectionView 基本使用-纯代

本文链接:https://www.haomeiwen.com/subject/qpuqsttx.html