如何循环遍历 SwiftUI 结构中的键?

How to loop through keys in struct for SwiftUI?

我很久以前就完成了 XCode,现在回来学习 SwiftUI。我正在尝试在 HStack 中呈现结构的数据。

结构如下所示:

struct Product: Hashable, Codable{
    var column0: Int
    var column1: String
    var column2: String
    var column3: String
    var column4: String
}

在视图体内有这样的东西:

var pdt: Product
var body: some View {
        HStack {
             Text(pdt.column1)
             Text(pdt.column2)
        }
}

上面的方法可行,但我不想对 column1column2 进行硬编码,因为列数会有所不同。如何将 pdt 用作字典并循环遍历键以便显示所有列?

非常感谢!

这里是一个可能的方法演示(对于这个简单的案例)——您可以反映属性并将它们映射到显示的值(对于 custom/complex 类型,需要更多的努力才能明确想法)。

var body: some View {
    let columnValues = Mirror(reflecting: pdt)
                          .children.map { "\([=10=].value)" }
    return HStack {
        ForEach(columnValues, id: \.self) { Text([=10=]) }
    }
}