
UICollectionView cell子项布局的分析
发布日期:2021-05-27 02:41:57
浏览次数:3
分类:技术文章
本文共 822 字,大约阅读时间需要 2 分钟。
前言:
UICollectionView弥补了UITabView的一些不足。但与Android平台上的RecyclerView而言,其显得似乎并没有RecyclerView那样随心所欲地操纵布局那样方便。本文将浅显地分析一下该问题。
一:分析:决定cell子项布局布局的因素有哪些
UICollectionView内放有cell,cell内部放有cell子项。如此层层嵌套,每个控件都将成为影响因素的一员。那么我们不难得出如下影响因素结论
- UICollectionView的宽和高
- cell的宽和高
- cell内部控件的宽和高
- UICollectionView的滚动方式(水平、竖直)
看上去所有的因素我们都应该考虑上去,然而,在实际工程中并非所有因素都会最终影响在一起。
二:影响情况
首先先对水平、竖直方向上布局做个基本了解:
- 水平方向是指在布局时,先按竖直方向排布cell子项,排满后自动折回下一列,如果cell子项超过UICollectionView的尺寸,会水平滚动
- 竖直方向是指在布局时,先按水平方向排布cell子项,排满后自动折回下一行,如果cell子项超过UICollectionView的尺寸,会竖直滚动
经过分析可知,在cell高度与UICollectionView高度一致时(或UICollectionView高度不超过cell的两倍):
水平布局时,页面内列数个数主要受如下影响:子项宽度越大,页面内列数个数就越少; 竖直布局时,页面内每行子项个数主要受如下影响:子项宽度越大,页面内每行子项个数就越少。 这里读者可能会有疑问,为什么不考虑UICollectionView高度超过cell的两倍时的情况和子项高度的情况。这里没有分析的原因也很简单:前者是因为一旦UICollectionView高度超过cell的两倍时就自动变成九宫格形式排列;后者是因为在实际业务场景中几乎不存在(试想一下定义的cell显示不全的情景)。转载地址:https://blog.csdn.net/kicinio/article/details/109908264 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!
发表评论
最新留言
关注你微信了!
[***.104.42.241]2023年11月15日 11时30分04秒
关于作者

喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
[SRv6]《SRv6网络编程》SRv6 OAM与随路网络测量(2/2:IFIT)
2019-03-25
【日语】【歌词】「Lemon」--米津玄师
2019-03-25
[5GC]《5G核心网-赋能数字化时代》| 6.3用户面处理
2019-03-25
Clion安装配置(Windows)
2019-03-25
C++中vector使用find函数查找struct结构体内容
2019-03-25
C++11产生随机数
2019-03-25
C++如何提高Vector效率的一些方法
2019-03-25
【快手笔试T1】数组优先级排序
2019-03-25
整数取反(取负)运算
2019-03-25
关于C++内置排序函数sort的自定义比较器cmp用法
2019-03-25
【头条笔试T2】
2019-03-25
使用hexo搭建博客,文件无法加载的问题
2019-03-25
Socket Server指定监听端口和IP
2019-03-25
Ubuntu网络连接图标消失
2019-03-25
关于C++重载、重写、重定义的理解
2019-03-25
常见排序的实现C++
2019-03-25
Clion中github工具的配置
2019-03-25
Clion/IDEA中使用markdown插件
2019-03-25
C/C++字符串变量的声明方式差异
2019-03-25
剑指offer刷题记录
2019-03-25