SwiftUI:如何呼吁一个功能来填充LazyVGrid

0

的问题

我工作上的一些代码在SwiftUI(学习,因为我去)在那里我是构建立网的项目(这是严重的简化的目的,这个问题):

let col1 = GridItem(alignment: .leading)
let col2 = GridItem(alignment: .trailing)

LazyVGrid(columns: [col1, col2]) {
    Text("C1")
    Text("C1")
    Text("C2")
    Text("C2")
}

所以我获得这样的事情:

+----+----+
| C1 | C1 |
+----+----+
| C2 | C2 |
+----+----+

现在,在我的代码,我在做一些其他的东西使我想要提取功能,因此我的代码看起来是这样的:

let col1 = GridItem(alignment: .leading)
let col2 = GridItem(alignment: .trailing)

LazyVGrid(columns: [col1, col2]) {
    row("C1")
    row("C2")
}

func row(text: String) -> ???? {
    Text(text)
    Text(text)
}

但我发现很难看到如何做到这一点。 不能返回一系列? 或者是有一些方面的迅速的建设者我可以用在这里? 我试图一阵但是 LazyVGrid's建立不喜欢它。

swiftui
2021-11-23 14:44:00
1

最好的答案

3

研究所 @ViewBuilder 属性。 这使得功能表现得像封闭你过来 LazyVGrid 和许多SwiftUI景。

@ViewBuilder
func row(text: String) -> some View {
    Text(text)
    Text(text)
}
2021-11-23 15:17:52

当然。 谢谢你。
drekka

其他语言

此页面有其他语言版本

Русский
..................................................................................................................
Italiano
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
Português
..................................................................................................................
ไทย
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................