SwiftUI ro‘yxatlar va formalar
SwiftUI ro‘yxatlar va formalar
List yordamida ma’lumotlarga asoslangan ro‘yxatlar yarating va Form, qatorlar hamda boshqaruv elementlari yordamida kiritilgan ma’lumotlarni yig‘ing.
Ro‘yxatlar
Identifikatsiyalanadigan (identifiable) elementlardan foydalanib, kolleksiyalarni List va ForEach bilan render qiling.
Sintaksis:
List(items) { Text($0.title) }- yoki
List { ForEach(items) { ... } }
Misol
import SwiftUI
struct Todo: Identifiable { let id: Int; let title: String }
struct TodoList: View {
let items = [Todo(id: 1, title: "Buy milk"), Todo(id: 2, title: "Walk dog")]
var body: some View {
List(items) { t in Text(t.title) }
}
}
import SwiftUI
struct ContentView: View {
var body: some View { TodoList() }
}
import SwiftUI
@main
struct MyApp: App {
var body: some Scene {
WindowGroup { ContentView() }
}
}
Ushbu misol List yordamida identifikatsiyalanadigan elementlarning oddiy ro‘yxatini ko‘rsatadi.
Formalar
Kiritish elementlarini Form va o‘rnatilgan qatorlar yordamida guruhlang.
Sintaksis: Form { Section { TextField(...) } Toggle(...) Stepper(...) }
Misol
import SwiftUI
struct SettingsForm: View {
@State private var name = ""
@State private var notifications = true
@State private var count = 1
var body: some View {
Form {
Section(header: Text("Profile")) {
TextField("Name", text: $name)
}
Section(header: Text("Preferences")) {
Toggle("Notifications", isOn: $notifications)
Stepper("Count: \(count)", value: $count, in: 1...10)
}
}
}
}
import SwiftUI
struct ContentView: View {
var body: some View { SettingsForm() }
}
import SwiftUI
@main
struct MyApp: App {
var body: some Scene {
WindowGroup { ContentView() }
}
}
Ushbu misol bo‘limlarga ega formada joylashtirilgan matn maydoni, toggle va stepper yordamida ma’lumotlarni yig‘adi.
Maslahat: Dinamik kontent va identifikatsiyalanadigan elementlar uchun ro‘yxatlar ichida ForEach dan foydalaning.
W3Schools Pathfinder
Yutuqlaringizni kuzating – bu bepul!
