当前位置:网站首页>SwiftUI * Grid
SwiftUI * Grid
2022-08-09 02:45:00 【HumorousGhost】
Grid
是一种对应 UICollectionView
的视图,分为 LazyVGrid
和 LazyHGrid
两种 Grid
控件。
基本用法
ScrollView {
LazyVGrid(columns: [
GridItem(.fixed(75.fit()), spacing: spacing),
GridItem(.fixed(75.fit()), spacing: spacing),
GridItem(.fixed(75.fit()), spacing: spacing),
GridItem(.fixed(75.fit()), spacing: spacing)
], alignment: .leading, spacing: 16.fit()) {
ForEach(0...imageList.count, id: \.self) {
index in
imageItem(imageList[index])
}
}
.padding(.horizontal, 16.fit())
}
- 首先
Grid
需要配合Scrollview
使用,不然没有滚动的功能 LazyVGrid
与LazyHGrid
可以混合使用,即上面代码中可以将imageItem()
替换使用LazyHGrid
控件。
GridItem
GridItem
是用于确定 Grid
的大小以及对下一个 Item
的距离的,将其用数组包裹,代表LazyVGrid
的列数或 LazyHGrid
的行数
public init(_ size: GridItem.Size = .flexible(), spacing: CGFloat? = nil, alignment: Alignment? = nil)
这个框架的文档比较少,目前并不清楚这个控件是否有重用机制
但猜测是没有重用机制的,因为 ScrollView
是没有重用机制的,而 Grid
脱离 ScrollView
又没有滚动功能,因此猜测 Grid
没有重用机制,但有懒加载机制。
边栏推荐
猜你喜欢
随机推荐
【HNUMSC】C language second lecture
grafana的panel点击title,没有反应,没有出现edit选项
Open3D 均匀采样
Tricore架构上的调试案例
【洛谷】P1456 Monkey King
The building had been registry cluster, load balancing
HMS Core分析服务智能运营6.5.1版本上线
<爆>2022中文版-《海外博士申请指南-材料准备、时间线、套磁、面试及录取》免费分享
科大讯飞笔试题复盘
全志通过fastboot烧写boot.img
多线程 (进阶+初阶)
Redis系列文章导航
从0开始搭建自动化测试框架之PO分层架构
数字 06 verilog_关于异步FIFO
【izpack】使用izpack为你的程序提供安装程序封装
ApiFile配置环境
数仓第一篇:基础架构
Likou Brush Question Record 1.5-----367. Valid perfect squares
最强分布式锁工具:Redisson
spark RDD转换算子 sample