Junior — Middle
Quels nouveaux moyens de surveillance et de gestion de l'état dans SwiftUI ont été introduits après la version iOS 13?
sobes.tech IA
Réponse de l'IA
Après iOS 13, SwiftUI a ajouté de nouveaux moyens pour surveiller et gérer l'état, élargissant les capacités de la programmation réactive :
- @StateObject — pour créer et gérer le cycle de vie des objets ObservableObject dans une vue, en garantissant que l'objet est créé une seule fois.
- @ObservedObject — pour s'abonner aux changements d'objets ObservableObject externes.
- @EnvironmentObject — pour transmettre des données à travers la hiérarchie des vues sans les passer explicitement.
- @AppStorage — pour lier facilement l'état avec UserDefaults.
- @SceneStorage — pour sauvegarder l'état dans le cycle de vie d'une scène.
Ces propriétés permettent de suivre efficacement les changements de données et de mettre à jour l'interface automatiquement sans code supplémentaire.
Exemple d'utilisation de @StateObject :
class ViewModel: ObservableObject {
@Published var count = 0
}
struct ContentView: View {
@StateObject private var viewModel = ViewModel()
var body: some View {
VStack {
Text("Count: \(viewModel.count)")
Button("Increment") {
viewModel.count += 1
}
}
}
}