当前位置:网站首页>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
没有重用机制,但有懒加载机制。
边栏推荐
猜你喜欢
随机推荐
全志通过fastboot烧写boot.img
Take you do interface test from zero to the first case summary
Jenkins environment deployment, (packaging, publishing, deployment, automated testing)
数字 01 Vivado2018.2安装及实操
不会吧!不会吧!居然还有人不知道重绘以及回流
【图像增强】基于Step和Polynomial 滤波实现图像增强附matlab代码
OJ:L2-012 关于堆的判断
[TensorRT] 对UNet进行推理加速
工具类:base64格式的数据与本地文件的相互转换
Solve the Final Fantasy 13-2 Clock Puzzle with DFS
【HNUMSC】C language second lecture
从0开始搭建自动化测试框架之PO分层架构
Postman interface test [official website] latest version installation and use tutorial
数仓第二篇: 数据模型(维度建模)
多线程 (进阶+初阶)
opencv在图像上长按左键画矩形单击右键清除
Pytest+request+Allure实现接口自动化框架
Appium常用操作及H5页面元素定位
炫酷-轮播图-走马灯
button click animation