Junior — Middle
Quali nuovi strumenti di monitoraggio e gestione dello stato in SwiftUI sono stati introdotti dopo la versione iOS 13?
sobes.tech AI
Risposta dell'AI
Dopo iOS 13, SwiftUI ha aggiunto nuovi strumenti per il monitoraggio e la gestione dello stato, ampliando le capacità della programmazione reattiva:
- @StateObject — per creare e gestire il ciclo di vita degli oggetti ObservableObject all’interno di una vista, garantendo che l’oggetto venga creato una sola volta.
- @ObservedObject — per sottoscriversi alle modifiche di oggetti ObservableObject esterni.
- @EnvironmentObject — per passare dati attraverso la gerarchia delle viste senza passarli esplicitamente.
- @AppStorage — per collegare comodamente lo stato con UserDefaults.
- @SceneStorage — per salvare lo stato all’interno del ciclo di vita della scena.
Queste proprietà consentono di tracciare efficacemente le modifiche ai dati e aggiornare automaticamente l’interfaccia senza codice aggiuntivo.
Esempio di utilizzo di @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
}
}
}
}