ForEach
Thuộc phần Giới thiệu về SwiftUI trong hành trình Swift của Coddy. Bài học 29 trên 50.
ForEach tạo một khung hiển thị cho mỗi phần tử trong một tập hợp:
let fruits = ["Apple", "Banana", "Cherry"]
var body: some View {
VStack {
ForEach(fruits, id: \.self) { fruit in
Text(fruit)
}
}
}Closure nhận từng phần tử và trả về giao diện của phần tử đó. SwiftUI cần phân biệt các hàng, nên yêu cầu một id. id: \.self dùng chính giá trị đó, phù hợp khi mọi phần tử đều khác nhau.
Một dãy số cũng hoạt động, không cần id:
ForEach(1..<4) { number in
Text("Row \(number)")
}Đoạn này hiển thị Row 1, Row 2 và Row 3: 1..<4 dừng trước 4.
Thử thách
DễHiển thị thực đơn: bên trong VStack, dùng ForEach để tạo một Text cho mỗi thức uống trong drinks, theo đúng thứ tự.
Tự làm thử
import SwiftUI
@main
struct CoddyApp: App {
var body: some Scene {
WindowGroup {
ContentView()
}
}
}Bài học này có một bài trắc nghiệm ngắn. Bắt đầu bài học để trả lời và theo dõi tiến độ.
Tất cả bài học trong Giới thiệu về SwiftUI
Tự luyện tập: Playground SwiftUI