Per ogni elemento
Fa parte della sezione Introduzione a SwiftUI del percorso Swift di Coddy. Lezione 29 di 50.
ForEach crea una vista per ogni elemento di una raccolta:
let fruits = ["Apple", "Banana", "Cherry"]
var body: some View {
VStack {
ForEach(fruits, id: \.self) { fruit in
Text(fruit)
}
}
}La closure riceve ciascun elemento e restituisce la relativa vista. SwiftUI ha bisogno di un modo per distinguere le righe, quindi richiede un id. id: \.self usa il valore stesso, il che funziona quando ogni elemento è diverso.
Funziona anche un intervallo di numeri, senza id:
ForEach(1..<4) { number in
Text("Row \(number)")
}Questo mostra Row 1, Row 2 e Row 3: 1..<4 si ferma prima di 4.
Sfida
FacileMostra il menu: all'interno di VStack, usa ForEach per creare un Text per ogni bevanda in drinks, nell'ordine.
Provalo tu
import SwiftUI
@main
struct CoddyApp: App {
var body: some Scene {
WindowGroup {
ContentView()
}
}
}Questa lezione include un breve quiz. Inizia la lezione per rispondere e tenere traccia dei tuoi progressi.
Tutte le lezioni di Introduzione a SwiftUI
7Elenchi
Per ogni elementoElementi identificabiliElencoAggiungere elementiRiepilogo - Lista della spesa10Progetto - Coddy Coffee
Panoramica del progettoSchermate delle bevande2Mostrare contenuti
Viste di testoNumeri nel testoFontColoriSF SymbolsRiepilogo - Etichetta del prezzo5Stato e pulsanti
PulsantiLa proprietà @StateStato vero o falsoViste condizionaliRiepilogo - SegnapuntiEsercitati da solo: Playground SwiftUI