最新要闻
- 香港2022年暴力罪案同比下降7.9%
- 观天下!探险的好处辩论赛,正方_探险的好处
- 全球播报:AMD RX 7600S游戏本显卡首测:远不如RTX 3060!高端弃疗了
- 世界速讯:10道恋爱送命题灵魂拷问ChatGPT:它的回答让我陷入沉思
- 马斯克向往每周只工作80小时!网友:驴都不敢这么用
- 每日速读!中国内地特供!Intel i5-13490F处理器图赏
- 今日热文:轻薄长续航!小新Air14超极本2023发布:标配13代酷睿+1TB SSD
- 普及1TB 联想小新2023笔记本、一体机价格汇总:最贵才8999元
- 每日资讯:8999元 联想小新Pro 27一体机发布:13代酷睿i9搭配Arc独显
- 环球微头条丨4199元起 小新14/16轻薄本2023发布:酷睿i5-1340P、高配1TB SSD
- 播报:三星Galaxy S23 Ultra发布 老外怒赞:安卓阵营老大
- 热头条丨公积金月汇缴额是什么意思
- 当前热讯:用微信传播盗版电影被查:向两百多人分享《流浪地球2》《满江红》链接
- 新资讯:日本独居雌长臂猿突然产崽!孩子的父亲竟还是自己的“爷爷”
- 环球最新:Lady Gaga《小丑2》剧照首曝:疯狂的小丑女登场!
- 环球速讯:联想小新官宣接入百度“文心一言”:可在桌面一键直达
手机
iphone11大小尺寸是多少?苹果iPhone11和iPhone13的区别是什么?
警方通报辅警执法直播中被撞飞:犯罪嫌疑人已投案
- iphone11大小尺寸是多少?苹果iPhone11和iPhone13的区别是什么?
- 警方通报辅警执法直播中被撞飞:犯罪嫌疑人已投案
- 男子被关545天申国赔:获赔18万多 驳回精神抚慰金
- 3天内26名本土感染者,辽宁确诊人数已超安徽
- 广西柳州一男子因纠纷杀害三人后自首
- 洱海坠机4名机组人员被批准为烈士 数千干部群众悼念
家电
给我两分钟的时间:微博风格九宫格:UICollectionView实现
引言
UICollectionView 是 iOS 平台上一种强大的视图布局工具,能够很好地实现网格布局,列表布局等多种布局方式。
首先讲下今天的目标,我们将要使用 UICollectionView 来创建仿微博的九宫格内容。首先,目标行数为3,每行显示3张图片,总共显示9张图片。
(资料图片)
实现方式
我们往界面上添加一个 UICollectionView,并创建一个 UICollectionViewFlowLayout 布局类,这里的实现为懒加载的方式:
- (UICollectionView *)collectionView { if (!_collectionView) { UICollectionViewFlowLayout *layout = [[UICollectionViewFlowLayout alloc] init]; _collectionView = [[UICollectionView alloc] initWithFrame:CGRectZero collectionViewLayout:layout]; _collectionView.scrollEnabled = NO; // 设置不让滑动 [self.view addSubview:_collectionView]; } return _collectionView;}
为自定义 cell 注册到 UICollectionView 中:
[_collectionView registerClass:[GCImageGridCell class] forCellWithReuseIdentifier:kGCImageGridCell];
然后,我们设置 UICollectionView 的数据源协议:
_collectionView.dataSource = self;
接着实现 UICollectionView 的协议内容:
- (NSInteger)collectionView:(UICollectionView *)collectionView numberOfItemsInSection:(NSInteger)section { return self.datas.count;}- (__kindof UICollectionViewCell *)collectionView:(UICollectionView *)collectionView cellForItemAtIndexPath:(NSIndexPath *)indexPath { GCImageGridCell *cell = [collectionView dequeueReusableCellWithReuseIdentifier:kGCImageGridCell forIndexPath:indexPath]; NSString *imgName = self.datas[indexPath.row]; cell.imgView.image = [UIImage imageNamed:imgName]; return cell;}
接着,设置前面的 UICollectionViewFlowLayout 的属性,将滑动的方向设置为纵向滑动:
layout.scrollDirection = UICollectionViewScrollDirectionVertical; //设置布局方式为纵向布局
接下来,计算每个 item 的大小、item 之间的间距和行距、每个分组之间的间距:
CGFloat screenWidth = [[UIScreen mainScreen] bounds].size.width;CGFloat horizontal = 16; // 左右边距CGFloat itemSpace = 6; // item 的间距CGFloat itemSize = (screenWidth - horizontal * 2 - itemSpace * 2) / 3; // 计算每个 item 的大小layout.minimumLineSpacing = itemSpace;layout.minimumInteritemSpacing = itemSpace;layout.sectionInset = UIEdgeInsetsMake(0, horizontal, 0, horizontal);layout.itemSize = CGSizeMake(floor(itemSize), floor(itemSize));
注意:计算item大小时使用到了floor函数向下取整,这是防止每行的 item 有超出屏幕而导致换行的问题
效果呈现
总结
在这篇文章中,我们学习了如何用 UICollectionView 来制作九宫格布局。希望这篇文章能为大家带来帮助,快来关注我,让我们一起努力!
关于作者
博文作者:GarveyCalvin
公众号:凡人程序猿
微博:https://weibo.com/feiyueharia
博客园:https://www.cnblogs.com/GarveyCalvin
本文版权归作者所有,欢迎转载,但必须保留此段声明,并给出原文链接,谢谢合作!
-
【算法训练营day45】LeetCode70. 爬楼梯(进阶) LeetCode322. 零钱兑换 LeetCode279. 完全平方数
LeetCode70 爬楼梯(进阶)题目链接:70 爬楼梯(进阶)独上高楼,望尽天涯路可以把爬楼梯看成是一个...
来源: 给我两分钟的时间:微博风格九宫格:UICollectionView实现
《分布式技术原理与算法解析》学习笔记Day12
【算法训练营day45】LeetCode70. 爬楼梯(进阶) LeetCode322. 零钱兑换 LeetCode279. 完全平方数
香港2022年暴力罪案同比下降7.9%
观天下!探险的好处辩论赛,正方_探险的好处
全球播报:AMD RX 7600S游戏本显卡首测:远不如RTX 3060!高端弃疗了
世界速讯:10道恋爱送命题灵魂拷问ChatGPT:它的回答让我陷入沉思
马斯克向往每周只工作80小时!网友:驴都不敢这么用
每日速读!中国内地特供!Intel i5-13490F处理器图赏
天天快看:002. html篇之《表格》
当前视讯!力扣---3. 无重复字符的最长子串
今日热文:轻薄长续航!小新Air14超极本2023发布:标配13代酷睿+1TB SSD
普及1TB 联想小新2023笔记本、一体机价格汇总:最贵才8999元
每日资讯:8999元 联想小新Pro 27一体机发布:13代酷睿i9搭配Arc独显
环球微头条丨4199元起 小新14/16轻薄本2023发布:酷睿i5-1340P、高配1TB SSD
播报:三星Galaxy S23 Ultra发布 老外怒赞:安卓阵营老大
最资讯丨【LeetCode栈与队列#05】滑动窗口最大值
如何优雅的在 Word 中添加漂亮的代码?
今日热文:2023.02.15.差分
热头条丨公积金月汇缴额是什么意思
当前热讯:用微信传播盗版电影被查:向两百多人分享《流浪地球2》《满江红》链接
新资讯:日本独居雌长臂猿突然产崽!孩子的父亲竟还是自己的“爷爷”
环球最新:Lady Gaga《小丑2》剧照首曝:疯狂的小丑女登场!
环球速讯:联想小新官宣接入百度“文心一言”:可在桌面一键直达
当前通讯!新能源车企现最大跌幅背后:涨价、营销、刺激消费的“国补退坡游戏”
【环球速看料】数据类型之字符串、数据类型之列表、数据类型之字典、数据类型之布尔值、数据类型之元组、数据类型之集合、与用户交互、格式化输出、基本运算符
每日热讯!数字化开采|AIRIOT智慧矿山自动化生产解决方案
全球视讯!wagger也不好用了!API文档还得是Apipost
世界信息:Web 页面之间传递参数
Java开发工具IntelliJ IDEA 2020.2完整授权流程
观速讯丨一加显示器E 24上市:24寸IPS屏、18W PD输出
环球最新:网易代理《迷室3》《迷室:往逝》经典手游宣布停运:数据全清空
硬蹭名气?《中国式相亲2》非《中国式家长》团队作品
热议:桂格燕麦诞生于俄亥俄引网友关注 客服:产品与俄亥俄无关
环球微动态丨电量低于20%赶快充电!雅迪电动车保养攻略来了:关乎安全 车主必看
前沿热点:M值如何兑换话费
焦点观察:记录--『uni-app、小程序』蓝牙连接、读写数据全过程
全球速看:PostgreSQL重要参数解析及优化
天天新动态:openeuler加载dpdk驱动模块
【全球报资讯】(数据库系统概论|王珊)第三章关系数据库标准语言SQL-第六、七节:视图
环球热头条丨【算法训练营day44】完全背包基础 LeetCode518. 零钱兑换II LeetCode377. 组合总和IV
天天看热讯:想要模仿LPL,DRX赛后发漫画,却被Gen官方拉黑了?
焦点速读:Win11下月喜迎更新大礼包:10GB补丁 重启次数更少
【环球播资讯】员工发现老板娘偷看同事微信:火速离职
天天精选!车标成伤人凶器 日产召回超40万辆汽车
索尼降噪耳机新秀!WH-CH720N意外偷跑:升级蓝牙5.2
大国重器 首台国产HA级重型燃机下线:未来将100%零排放
焦点!字体查看小工具 -- (采用wpf开发)
【算法训练营day43】LeetCode1049. 最后一块石头的重量II LeetCode494. 目标和 LeetCode474. 一和零
每日看点!独立包装:大牌N95口罩25片9.9元到手
环球观速讯丨贾跃亭名下已无财产可执行:无车辆、不动产
【环球报资讯】苹果逐渐向OLED过渡!替换掉mini LED
世界消息!羊毛没了 Steam阿根廷区《卧龙》价格暴涨一倍
焦点讯息:一看就能装!奇瑞iCar原厂趣改套件上市:3389元起
你应该知道的微信小程序游戏技术❗️❗️
【算法题--异或操作】找出数组中唯一没有重复的那个元素
极兔一面:Dockerfile如何优化?注意:千万不要只说减少层数
环球时讯:怎样的目标管理能真正实现目标?做到这3点就对了
开心档之Java 流(Stream)、文件(File)和IO
【焦点热闻】舍利子制作方法居然也有发明专利 网友:得道高僧等级速升外挂
世界即时:跑腿师傅诉苦:男子订一束花送五个女生均被拒 还被扣款差评
微软将用UUP方式推送.NET更新:“可选更新”终于可控
钉钉iOS版喜迎更新:支持定时消息 再不怕打扰别人休息了
天天热讯:《星际争霸2》新晋中国世界冠军李培楠:别给暴雪送钱 不要买!
天天最新:CSS 盒模型和 box-sizing 属性
环球讯息:全志h616,Ubuntu,python3.9环境搭建
【全球新要闻】【关系型数据库】事务特性及事务隔离级别
软件自动化测试高频面试题
环球百事通!游戏帧数暴增84% 英特尔锐炫显卡新老驱动对比
当前动态:山东多人无视劝阻赶海 1人溺水遇难:必须小心这4点
世界即时看!价值7万的爱马仕包运输途中被烧毁!顺丰:如果是我们的问题 会进行处理
天天速看:男子给女友转账140万分手想要回:女方最终被判返还40万
每日热门:媒体曝苹果扩大在印产量障碍重重:这品控看完避雷
新资讯:时隔多年,这次我终于把动态代理的源码翻了个地儿朝天
环球速读:AI照骗恐怖如斯!美女刷屏真假难辨 网友:警惕AI网恋诈骗
【全球时快讯】万元级最香!ROG四款满血笔记本齐上阵:魔霸新锐2023首发9999元手慢无
SQL工具性能实测:居然比Navicat还快,数百万行数据导出仅51秒
当前要闻:从上至下遍历二叉树---队列的性质
全球焦点!00后男生长期把可乐当水喝:牙全坏
《巫师3》次时代版热修复上线:解决4.01版性能问题
MINI纯电Countryman谍照
世界简讯:贾跃亭再被执行2.4亿:总额超42亿!自称FF91四月交付
车主称凯迪拉克新车刹车失灵高速上撞车 网友:这次支持4S
焦点要闻:xxl-job~为宿主机添加定时备份数据库的程序
扬汤止沸是什么意思?扬汤止沸是做功还是热传递?
生活中测量质量的工具有哪些?生活中测量质量的工具研究背景
每日观点:199元!小米30W无线车充开售:电动夹臂 iPhone也能用
天天快资讯:荣耀Magic5系列样张首曝光 AI无人抓拍或刷新拍照速度革命 2月27日全球发布!
全球头条:首发7999起 机械师曙光16 Pro开启预售:可选13代i9+RTX 4070
通讯!13倍浓缩:日本隅田川胶囊咖啡1.2元/杯大差价抄底
你最信任哪家快递公司?数千网友近一半投票给了它
露蜂房和蜂房有什么区别?露蜂房的功效和作用是什么?
漫画长歌行的结局是什么?漫画长歌行什么时候恢复更新?
汉武帝叫什么名字?汉武帝之后的皇位顺序
屏幕分辨率调不了是什么原因?屏幕分辨率调不了怎么解决?
荣事达手机怎么刷机?荣事达手机所有型号
海尔洗衣机e4怎么解决?海尔洗衣机故障代码大全
上海和首尔哪个更发达?上海和首尔咖啡馆数量
骁龙616处理器怎么样?骁龙616处理器相当于麒麟多少?
环球要闻:矩阵中的路径