SwiftUI Academy · Lektion

Skicka ned en Binding

Skicka state till en undervy med dollartecknet.

Lektion 2 av 413 steg

Skicka ned en Binding är en gratis lektion i SwiftUI Academy på CoddyKit. Detta är lektion 2 av 4. Ni kan läsa hela lektionen gratis nedan och sedan öva praktiskt i webbläsaren med en inbyggd kodredigerare och en AI-handledare som är tillgänglig dygnet runt. Den ingår i lärvägen för SwiftUI Academy, och Era framsteg synkroniseras mellan webben och CoddyKit-appen. Kursen i SwiftUI Academy innehåller totalt 4 lektioner.

Dollartecknet

För att omvandla @State till en bindning skickar du det vidare genom att sätta ett dollartecken framför egenskapen. Då får den underordnade vyn en aktiv koppling.

Värde kontra bindning

Det vanliga namnet ger det aktuella värdet. Namnet med ett dollartecken framför ger bindningen. Samma egenskap, två sätt att använda den.

var count = 0
// count   -> the value
// $count  -> the binding

Äga tillståndet

Den överordnade vyn deklarerar källan med @State. Bara den som äger tillståndet kan skapa en bindning från det.

struct Parent: View {
    @State private var isOn = false
    var body: some View { Text("Placeholder") }
}

Lämna över det

I den överordnade vyns body skickar du bindningen till den underordnade vyn genom att skriva egenskapens namn med ett dollartecken framför.

var body: some View {
    ChildView(isOn: $isOn)
}

Den underordnade vyn tar emot den

Den underordnade vyn lagrar kopplingen i en egenskap med @Binding. Dess typ matchar värdet, till exempel Bool eller String.

struct ChildView: View {
    @Binding var isOn: Bool
    var body: some View { Toggle("On", isOn: $isOn) }
}

Typerna måste matcha

En bindning till en Bool kan bara kopplas till en @Binding var isOn: Bool. Felaktiga typer stoppar bygget tills du rättar dem.

Ändringar flödar uppåt

När den underordnade vyn ändrar sin växel går ändringen direkt tillbaka till den överordnade vyns @State. Den överordnade vyn renderas om automatiskt.

Glömde du dollartecknet?

Skickar du det vanliga värdet där en bindning förväntas klagar Swift. Dollartecknet är det som gör det till en bindning.

Bindningar kan gå djupt

En underordnad vy kan skicka sin bindning vidare till sina egna underordnade vyer. Samma dollartecken leder tillståndet genom många lager.

Läs i den underordnade vyn

Inne i den underordnade vyn använder du det vanliga namnet för att läsa det aktuella värdet och namnet med dollartecken när en kontroll behöver få tillbaka bindningen.

Text(isOn ? "On" : "Off")
Toggle("Power", isOn: $isOn)

En rad, två riktningar

Det enda argumentet med dollartecken kopplar in fullständig synkronisering i två riktningar. Liten syntax, stor kraft bakom bindningen. ⚡

Snabb kontroll

Snabb kontroll av hur bindningar skickas vidare.

Sammanfattning: Bron med dollartecknet

Äg tillståndet med @State, skicka det vidare med dollartecknet och ta emot det som @Binding. Den bron håller den överordnade och underordnade vyn synkroniserade. 🌉

Gratis att börja

Lär dig Swift med en AI-lärare – gratis

Skriv och kör riktig kod i webbläsaren, få omedelbar hjälp av en AI-lärare dygnet runt och fortsätt där du slutade – på webben eller i appen.

Kurser
30
Lektioner
120

Vanliga frågor

Är lektionen ”Skicka ned en Binding” gratis?

Ja – hela texten till ”Skicka ned en Binding” kan läsas gratis här på webben. Om Ni vill öva interaktivt med en inbyggd kodredigerare och en AI-handledare som är tillgänglig dygnet runt och låsa upp resten av kursen i SwiftUI Academy, kan Ni uppgradera till CoddyKit PRO. Kursen i SwiftUI Academy innehåller totalt 4 lektioner.

Vad lär jag mig i ”Skicka ned en Binding”?

Skicka state till en undervy med dollartecknet. Ni övar på SwiftUI Academy med praktisk kod som körs direkt i webbläsaren, medan en AI-handledare som är tillgänglig dygnet runt svarar på Era frågor under lektionen.

Behöver jag någon erfarenhet för att börja lära mig SwiftUI Academy?

Du behöver inga förkunskaper. Utbildningen i SwiftUI Academy på CoddyKit är upplagd för allt från nybörjare till avancerade elever, så att du kan börja här eller från början och gå fram i din egen takt. Detta är lektion 2 av 4.

Hur lång tid tar lektionen ”Skicka ned en Binding”?

De flesta CoddyKit-lektioner tar cirka 5–10 minuter. Varje lektion är kort och interaktiv, så att du gör stadiga framsteg och kan fortsätta precis där du slutade – på webben eller i appen.

Kan jag skriva och köra kod i den här SwiftUI Academy-lektionen?

Ja. Varje SwiftUI Academy-lektion innehåller en inbyggd kodredigerare, så att du kan skriva och köra riktig kod direkt i webbläsaren och få omedelbar AI-feedback – utan lokal installation.

Alla lektioner i den här kursen

  1. Varför underordnade vyer behöver @Binding
  2. Skicka ned en Binding
  3. Bygg en återanvändbar Toggle-rad
  4. @State jämfört med @Binding
← Tillbaka till SwiftUI Academy