Middle+
Hoe maak je een klasse observeerbaar vanaf iOS 17?
sobes.tech AI
Antwoord van AI
Vanaf iOS 17, om een klasse observeerbaar te maken, kun je het nieuwe protocol Observable van Swift Concurrency gebruiken. In plaats van de gebruikelijke ObservableObject met @Published, moet de klasse nu voldoen aan het protocol Observable en gebruik maken van een asynchrone stroom van veranderingen.
Voorbeeld:
import SwiftUI
import Observation
@Observable
class MyModel {
var value: Int = 0
}
// Gebruik in SwiftUI
struct ContentView: View {
@StateObject private var model = MyModel()
var body: some View {
Text("Waarde: \(model.value)")
}
}
Het sleutelwoord hier is de annotatie @Observable voor de klasse, die automatisch de benodigde logica genereert om veranderingen te volgen. Dit vereenvoudigt het maken van observeerbare modellen en de integratie met SwiftUI.