Menu
Coddy logo textTech

Passaggio dei dati

Fa parte della sezione Introduzione a SwiftUI del percorso Swift di Coddy. Lezione 36 di 50.

Una schermata di dettaglio è solitamente una propria struct di visualizzazione con una proprietà per i dati che mostra:

struct RecipeDetail: View {
    let recipe: Recipe

    var body: some View {
        Text("Ready in \(recipe.minutes) minutes")
            .navigationTitle(recipe.name)
    }
}

Swift fornisce alla struct un inizializzatore con un parametro per ogni proprietà memorizzata, quindi RecipeDetail(recipe: pancakes) la crea. In un elenco, ogni collegamento passa i dati della propria riga:

List(recipes) { recipe in
    NavigationLink(recipe.name) {
        RecipeDetail(recipe: recipe)
    }
}

Ogni riga riceve un link a una schermata di dettaglio della propria ricetta. La vista dei dettagli non deve sapere nulla dell’elenco.

challenge icon

Sfida

Medio

Completa RecipeDetail: mostra Ready in 15 minutes (usando minutes della ricetta) in un testo con l’identificatore time e usa il nome della ricetta come titolo. Poi trasforma ogni riga dell’elenco in un NavigationLink intitolato con il nome della ricetta, che apre RecipeDetail per quella ricetta.

Provalo tu

import SwiftUI

@main
struct CoddyApp: App {
    var body: some Scene {
        WindowGroup {
            ContentView()
        }
    }
}
quiz iconMettiti alla prova

Questa lezione include un breve quiz. Inizia la lezione per rispondere e tenere traccia dei tuoi progressi.

Tutte le lezioni di Introduzione a SwiftUI

Esercitati da solo: Playground SwiftUI