در این جلسه قصد داریم آموزش ساخت یک لیست را بدهیم، اول با تعریف ساده یک لیست شروع میکنیم، و کم کم List را پیشرفته تر میکنیم.
برای تعریف یک لیست از کلمه کلیدی List
استفاده میکنیم و درون آن تمام view هایی که میخواهیم به کاربر نشان بدهیم را قرار میدهیم.
import SwiftUI
struct ContentView: View {
var body: some View {
List {
Text("SwiftUI")
Text("UIkit")
}
}
}
امکان تعریف view های مختلف درون یک List وجود دارد. مثلا میتوانید Text و Image و Button را درون یک List قرار دهید.
List {
Text("Apple")
Image("apple-image")
Button("Click") {
// do something
}
}
همانطور که میبینید، هر کدام از view ها در یک سطر جدا نمایش داده میشوند، برای این که تمام آن ها در یک سطر نمایش داده شوند آن ها را درون یک Stack قرار میدهیم.
List {
VStack {
Text("Apple")
Image("apple-image")
Button("Click") {
// do something
}
}
}
برای این کار میتوانیم از ForEach
استفاده کنیم.
var names = ["ios", "watchos", "macos", "tvos"]
List {
ForEach (names, id: \.self) { name in
Text(name)
}
}
ForEach
یک نوع حلقه در SwiftUI هست، که این امکان را میدهد که به تعداد خانه های آرایه names متن جدید ایجاد کنیم.self
در واقع خانه های خود آرایه را به عنوان یک شمارنده منحصر به فرد قرار میدهد.name
هر اسم دیگری را میتوانید قرار دهید، اما بطور معمولا این بخش را مفرد اسم آرایه (یا هر مجموعه داده دیگر) قرار میدهند.