Skicka ned en Binding
Skicka state till en undervy med dollartecknet.
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. 🌉
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
- Varför underordnade vyer behöver @Binding
- Skicka ned en Binding
- Bygg en återanvändbar Toggle-rad
- @State jämfört med @Binding