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ý
..................................................................................................................