collectionView的每一组的组头部和尾部的设置
为什么80%的码农都做不了架构师?>>>
- (instancetype)initWithFrame:(CGRect)frame collectionViewLayout:(UICollectionViewLayout *)layout{
UICollectionViewFlowLayout *flowLayout = [[UICollectionViewFlowLayout alloc] init];
_flowLayout = flowLayout;
_flowLayout.minimumLineSpacing = 3;
_flowLayout.minimumInteritemSpacing = 3;
_flowLayout.headerReferenceSize = CGSizeMake(SCREEN_WIDTH, 35);
_flowLayout.footerReferenceSize = CGSizeMake(SCREEN_WIDTH, 10);
self = [super initWithFrame:CGRectZero collectionViewLayout:_flowLayout];
if (self) {
self.showsVerticalScrollIndicator = NO;
self.bounces = NO;
self.alwaysBounceVertical = NO;
self.scrollsToTop = YES;
// self.pagingEnabled = NO;
self.dataSource = self;
self.delegate = self;
//self.backgroundColor = [UIColor clearColor];
self.backgroundColor = OtherLineColor;
//注册cell单元格
[self registerClass:[CategoryCollectionViewCell class] forCellWithReuseIdentifier:reuseIdentifier];
//下面的注册组的头尾部view,这个必须实现,否则会崩
//注册header单元格
[self registerClass:[CategoryCollectionReusableView class] forSupplementaryViewOfKind:UICollectionElementKindSectionHeader withReuseIdentifier:ID];
//注册footer单元格
[self registerClass:[UICollectionReusableView class] forSupplementaryViewOfKind:UICollectionElementKindSectionFooter withReuseIdentifier:footID];
}
return self;
}
//组的头尾部的代码实现
- (UICollectionReusableView *)collectionView:(UICollectionView *)collectionView viewForSupplementaryElementOfKind:(NSString *)kind atIndexPath:(NSIndexPath *)indexPath{
UICollectionReusableView *reusableView = nil;
//组的头部
if (kind == UICollectionElementKindSectionHeader ) {
//CategoryCollectionReusableView是自定义的继承UICollectionReusableView的子类;
CategoryCollectionReusableView *categoryCollectionReusableView = [collectionView dequeueReusableSupplementaryViewOfKind:kind withReuseIdentifier:ID forIndexPath:indexPath];
if (indexPath.section == 0) {
categoryCollectionReusableView.title = @"全部分类";
}else if (indexPath.section == 1){
categoryCollectionReusableView.title = @"热门品牌";
}
reusableView = categoryCollectionReusableView;
}
//组的尾部
if (kind == UICollectionElementKindSectionFooter) {
UICollectionReusableView *footer = [collectionView dequeueReusableSupplementaryViewOfKind:kind withReuseIdentifier:footID forIndexPath:indexPath];
reusableView = footer;
}
return reusableView;
}
转载于:https://my.oschina.net/llfk/blog/827227
collectionView的每一组的组头部和尾部的设置相关推荐
- iOS 开发 解决UICollectionView的多组头部视图样式不一样复用时发生错乱问题
UICollectionView用起来比UITableView麻烦多了,如何解决多组头部视图复用时出现的错乱问题就很关键 头部视图有几种样式就注册几种头部视图 // 防止cell和头部视图复用出现错乱 ...
- 【音乐理论】音与音高 ( 音区 | 小字一组 | 小字组 | 大字组 )
文章目录 一.音区 二.小字一组 三.小字二组 四.小字三组 五.小字四组 六.小字五组 六.小字组 七.大字组 八.大字一组 九.大字二组 十.音区总结 一.音区 钢琴有 888888 键 , 88 ...
- 本地策略和组策略,更改安全设置和用户权限分配兼容性问题
如果您更改安全设置和用户权限分配,则可能会导致客户端.服务和程序问题发生 适用于: Microsoft Windows Server 2003 Standard Edition (32-bit x86 ...
- ListView 添加头部 和尾部 布局 (addHeaderView 和 addFooterView)
ListView 添加头部 和尾部 布局 其实很简单 ,listview 暴露的有方法addHeaderView 和 addFooterView 从源码里面可以看到, addHeaderView 和 ...
- iOS-UIWebView添加头部和尾部
2019独角兽企业重金招聘Python工程师标准>>> 前言 项目中使用UIWebView显示本地或者是服务器上的页面很容易,但是仅限于显示页面,可控性并不高,如果有需要在头部和尾部 ...
- R语言str_trim函数去除字符串中头部和尾部的空格
R语言str_trim函数去除字符串中头部和尾部的空格 目录 R语言str_trim函数去除字符串中头部和尾部的空格 #导入包和库 #仿
- R语言head函数和tail函数获取dataframe、列表list、向量vector的头部和尾部数据:tail提取数据对象的尾部数据、head提取数据对象的头部数据、默认6条数据、自定义设置返回条数
R语言head函数和tail函数获取dataframe.列表list.向量vector的头部和尾部数据:tail提取数据对象的尾部数据.head提取数据对象的头部数据.默认6条数据.自定义设置返回条数 ...
- vue引用公用的头部和尾部文件。
我创建了一个header.vue和fotter.vue,用来做于网站的头部和尾部,每个页面都需要引用这两个,我以组件的方式,来引用这样只需要添加注册的组件就可以了. 第一步.在components文件 ...
- 如何让html引用公共的头部和尾部(多个html文件公用一个header.html和footer.html)
文章目录 如何实现多个.html静态页,引用同一个header.html和footer.html文件? HTML如何引用公共的页眉头部header.html文件和尾部footer.html文件? 首先 ...
最新文章
- C#逻辑运算符及解析
- php开发实例大全pdf百度云盘_互联网大厂 主要使用哪些开发语言
- 数据转换软件公司——HYFsoft
- 【图像去雾】基于matlab偏振水下模糊图像去雾【含Matlab源码 396期】
- 从Android support到Androidx
- 微信小程序跳转微信小程序的实现
- Axure 9 实战案例,动态面板的应用 3,京东的拖动拼图登录验证
- 我的世界联机侠怎么删除java_我的世界联机侠怎么增加房间人数
- 為什麼比 GIT 更好--理解 Mercurial 版本管理系統
- 如何用吹风机计算机主机清理,用吹风机吹电脑里的灰尘可以吗?
- 吴闲云——煮酒探西游
- 使用Eclipse编译运行MapReduce程序
- easyui动态修改required
- java登录界面圆形头像,Android使用CircleImageView实现圆形头像的方法
- selenium打开firefox无痕模式
- npm安装的全局包/工具不能使用,不是内部/外部命令
- 【RAII 思想】RAII 基本概念(一种思想)
- IDEA :Windows找不到文件“chrome”。请确定文件名是否正确,再试一次
- PS中可选颜色的计算方法(绝对量)
- 电力预测|基于新型MDPSO-SVR混合模型的电力预测特征选择(Matlab代码实现)
热门文章
- Git导出差分(diff)包--before/after/patch
- 设计模式七大原则之合成/聚合复用原则(CARP)
- 肿瘤特异性抗原行业调研报告 - 市场现状分析与发展前景预测(2021-2027年)
- 解决no session问题的三种方式
- postgresql数据库中多个Schemas互相访问
- 侦听器watch及其和计算属性、methods方法的总结
- 将VRoidStudio人物通过Blender导入到Mixamo
- ics-07—CTF
- 2021/8/11 火狐浏览器报错 建立安全连接失败 连接到 www.baidu.com 时发生错误。您正试图导入一个与已存在证书相同颁发者和序列号但却不相同的证书。错误代码SEC_ERROR_REU
- 开源软件漏洞升级步骤