UICollectionView cell子项布局的分析
发布日期:2021-05-27 02:41:57
浏览次数:22
分类:技术文章
本文共 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 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!
发表评论
最新留言
路过,博主的博客真漂亮。。
[***.116.15.85]2024年09月18日 10时27分59秒
关于作者
喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
Fedora14 mount出现错误时解决办法【亲测有效】
2019-06-07
使用Visual Studio 2013进行UI自动化测试
2019-06-07
13-集体照
2019-06-07
读了曾国藩家书,,心态逐渐平和起来。搞技术的如果缺乏信念的指引,生活会很乏味无聊!...
2019-06-07
160809308周子济第六次作业
2019-06-07
sublime text3最新版本注册码(build 3143)
2019-06-07
linux使用技巧
2019-06-07
必背公式及常数
2019-06-07
利用CSS、JavaScript及Ajax实现图片预加载的三大方法
2019-06-07
js时间戳转时间格式
2019-06-07
Nginx配置文件nginx.conf中文详解(总结)
2019-06-07
Linux的用户态和内核态
2019-06-07
JavaScript原生错误及检测
2019-06-07
为什么写作
2019-06-07
整数子数组求最大和添加验证
2019-06-07
使用kubeadm安装Kubernetes
2019-06-07
Principal Component Analysis 主元分析
2019-06-07
linux分割字符串操作
2019-06-07
PHP学习2
2019-06-07