Meneruskan Data
Termasuk bagian Pengenalan SwiftUI dalam perjalanan Swift di Coddy. Pelajaran 36 dari 50.
Layar detail biasanya berupa struct view tersendiri dengan property untuk data yang ditampilkannya:
struct RecipeDetail: View {
let recipe: Recipe
var body: some View {
Text("Ready in \(recipe.minutes) minutes")
.navigationTitle(recipe.name)
}
}Swift memberikan struct sebuah initializer dengan parameter untuk setiap property yang disimpan, sehingga RecipeDetail(recipe: pancakes) membuatnya. Dalam list, setiap tautan meneruskan data barisnya sendiri:
List(recipes) { recipe in
NavigationLink(recipe.name) {
RecipeDetail(recipe: recipe)
}
}Setiap baris memiliki tautan ke layar detail resepnya. Tampilan detail tidak perlu mengetahui apa pun tentang list.
Tantangan
SedangSelesaikan RecipeDetail: tampilkan Ready in 15 minutes (menggunakan minutes dari resep) dalam teks dengan identifier time, dan gunakan nama resep sebagai judulnya. Lalu, buat setiap baris list menjadi NavigationLink dengan judul berupa nama resep yang membuka RecipeDetail untuk resep tersebut.
Coba sendiri
import SwiftUI
@main
struct CoddyApp: App {
var body: some Scene {
WindowGroup {
ContentView()
}
}
}Pelajaran ini berisi kuis singkat. Mulai pelajarannya untuk menjawab kuis dan melacak progresmu.
Semua pelajaran di Pengenalan SwiftUI
Latihan sendiri: Playground SwiftUI