Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/swift/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
SwiftUI无间距配置LazyVGrid_Swift_Swiftui_Lazyvgrid - Fatal编程技术网

SwiftUI无间距配置LazyVGrid

SwiftUI无间距配置LazyVGrid,swift,swiftui,lazyvgrid,Swift,Swiftui,Lazyvgrid,我想创建一个没有空间或更小空间的单元格网格,就像照片应用程序一样,是否可以使用SwiftUI 2 LazyVGrid?我试过了,但在两列之间总是有这个空格 在文档中,间距参数描述为: 间距 栅格与其父视图中的下一项之间的间距 这没有多大意义,你能不能用填充?另外,当我尝试增加间距时,它似乎实际上影响了单元格行之间的间距,这更出乎意料。您在LazyVGrid中给出了间距:0表示垂直间距,在GridItem中给出了间距:0表示水平间距 这是一个演示。使用Xcode 12/iOS 14进行测试 st

我想创建一个没有空间或更小空间的单元格网格,就像照片应用程序一样,是否可以使用SwiftUI 2 LazyVGrid?我试过了,但在两列之间总是有这个空格

在文档中,
间距
参数描述为:

间距 栅格与其父视图中的下一项之间的间距


这没有多大意义,你能不能用
填充
?另外,当我尝试增加间距时,它似乎实际上影响了单元格行之间的间距,这更出乎意料。

您在
LazyVGrid
中给出了
间距:0
表示垂直间距,在
GridItem
中给出了
间距:0
表示水平间距

这是一个演示。使用Xcode 12/iOS 14进行测试

struct TestImagesInGrid:View{
@国家私有var imageNames:[字符串]
private let threeColumnGrid=[
GridItem(.flexible(最小值:40),间距:0),
GridItem(.flexible(最小值:40),间距:0),
GridItem(.flexible(最小值:40),间距:0),
]
init(){

_imageNames=State(initialValue:(0..正是我要找的!这些文档在网格上有误导性。您的措辞更清晰。GridItem的文档:
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)
            }
        }
    }
}