gpt4 book ai didi

SwiftUI 配置 LazyVGrid 无间距

转载 作者:行者123 更新时间:2023-12-03 09:22:33 25 4
gpt4 key购买 nike

我想创建一个没有空格或空间较小的单元格网格,就像照片应用程序一样,SwiftUI 2 LazyVGrid 可以吗?我试过了,但列之间总是有这个空间。
在文档中,spacing参数描述为:

spacingThe spacing beween the grid and the next item in its parent view.


这没有多大意义,你不能只用 padding为了那个原因?此外,当我尝试增加间距时,它似乎实际上影响了单元格行之间的空间,这更加出乎意料。

最佳答案

你给 spacing: 0LazyVGrid对于垂直间距,和 spacing: 0GridItem用于水平间距。
这是一个演示。使用 Xcode 12/iOS 14 测试
demo

struct TestImagesInGrid: View {
@State private var imageNames: [String]

private let threeColumnGrid = [
GridItem(.flexible(minimum: 40), spacing: 0),
GridItem(.flexible(minimum: 40), spacing: 0),
GridItem(.flexible(minimum: 40), spacing: 0),
]

init() {
_imageNames = State(initialValue: (0..<8).map { _ in
"image_\(Int.random(in: 1...3))"
})
}

var body: some View {
LazyVGrid(columns: threeColumnGrid, alignment: .leading, spacing: 0) {
ForEach(imageNames.indices) { i in
Image(imageNames[i]).resizable()
.aspectRatio(1, contentMode: .fill)
.border(Color.black)
}
}
}
}

关于SwiftUI 配置 LazyVGrid 无间距,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63026130/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com