Junior — Middle
შეგიძლიათ ახსნათ, რა არის ObservableObject SwiftUI კონტექსტში და როგორ გამოიყენება მდგომარეობის მართვაში?
sobes.tech AI
პასუხი AI-სგან
ObservableObject SwiftUI-ში არის პროტოკოლი, რომელიც საშუალებას აძლევს შექმნათ ობიექტები თვალსაზრისით, რომელიც შეიძლება იყოს თვალსაზრისით. როდესაც ასეთი ობიექტის თვისებები იცვლება, SwiftUI ავტომატურად განაახლებს დაკავშირებულ ხედებს.
ObservableObject-ის გამოყენებისთვის:
- შექმენით კლასი, რომელიც მემკვიდრეობით მოდის
ObservableObject-დან. - მონიშნეთ თვისებები, რომლებიც უნდა იყოს თვალსაზრისით,
@Publishedანოტაციით. - ხედში გამოიყენეთ თვისება
@ObservedObjectან@StateObject-ით, რათა გამოწეროთ ცვლილებებზე.
მაგალითი:
class UserSettings: ObservableObject {
@Published var username: String = "Guest"
}
struct ContentView: View {
@StateObject var settings = UserSettings()
var body: some View {
VStack {
Text("Hello, \(settings.username)!")
TextField("Username", text: $settings.username)
.textFieldStyle(RoundedBorderTextFieldStyle())
.padding()
}
}
}
ამ მაგალითში, როდესაც username იცვლება, ტექსტი ავტომატურად განახლდება ინტერფეისში.