自适应网格

适用于旧平台的另一种网格视图。

如果您的最低部署目标低于 iOS 16、macOS 11、watchOS 9 或 tvOS 16,您可能需要使用 AdaptiveGrid 以支持旧平台。

否则,请直接使用 SwiftUI 内置的 Grid

平台

开始使用

它类似于 SwiftUI 的原生 Grid,因此您可以快速上手。

AdaptiveGrid {
    GridRowContainer {
        GridCellContainer {
            Text("Hello")
        }
        GridCellContainer {
            Image(systemName: "globe")
        }
    }
    
    GridRowContainer {
        GridCellContainer {
            Image(systemName: "hand.wave")
        }
        GridCellContainer {
            Text("World")
        }
    }
}

您可以像使用 SwiftUI 原生 Grid 视图一样,指定水平和垂直间距。

AdaptiveGrid(horizontalSpacing: 10, verticalSpacing: 10) {
    ...
}

如果您想添加分隔线作为行分隔符,请将 showDivider 指定为 true

AdaptiveGrid(showDivider: true) {
    ...
}

注意

目前,自适应网格在水平方向上占据最大空间,这与添加了分隔线的 SwiftUI 内置 Grid 相同,因此您可能需要手动指定 widthmaxWidth 来控制大小。