העברת נתונים
חלק מהיחידה מבוא ל-SwiftUI במסלול ה-Swift של Coddy. שיעור 36 מתוך 50.
מסך פרטים הוא בדרך כלל מבנה תצוגה משלו עם מאפיין עבור הנתונים שהוא מציג:
struct RecipeDetail: View {
let recipe: Recipe
var body: some View {
Text("Ready in \(recipe.minutes) minutes")
.navigationTitle(recipe.name)
}
}Swift מספקת למבנה אתחול עם פרמטר עבור כל מאפיין מאוחסן, כך ש-RecipeDetail(recipe: pancakes) יוצרת אותו. ברשימה, כל קישור מעביר את הנתונים של השורה שלו:
List(recipes) { recipe in
NavigationLink(recipe.name) {
RecipeDetail(recipe: recipe)
}
}כל שורה מקבלת קישור למסך פרטים של המתכון שלה. תצוגת הפרטים אינה צריכה לדעת דבר על הרשימה.
אתגר
בינוניהשלם את RecipeDetail: הוא מציג Ready in 15 minutes (באמצעות minutes של המתכון) בטקסט עם המזהה time, ומשתמש בשם המתכון בתור הכותרת שלו. לאחר מכן, הפוך כל שורה ברשימה ל-NavigationLink שכותרתו היא שם המתכון ופותח את RecipeDetail עבור אותו מתכון.
נסו בעצמכם
import SwiftUI
@main
struct CoddyApp: App {
var body: some Scene {
WindowGroup {
ContentView()
}
}
}השיעור הזה כולל חידון קצר. התחילו את השיעור כדי לענות עליו ולעקוב אחרי ההתקדמות.
כל השיעורים ביחידה מבוא ל-SwiftUI
תרגלו בעצמכם: SwiftUI אונליין