Sobes.tech
Junior — Middle

Welche neuen Überwachungs- und Zustandsverwaltungswerkzeuge in SwiftUI wurden nach iOS 13 eingeführt?

sobes.tech KI

Antwort von AI

Nach iOS 13 wurden in SwiftUI neue Mittel zur Überwachung und Steuerung des Zustands eingeführt, die die Möglichkeiten der reaktiven Programmierung erweitern:

  • @StateObject — zum Erstellen und Verwalten des Lebenszyklus von ObservableObject-Objekten innerhalb einer Ansicht, wobei sichergestellt wird, dass das Objekt nur einmal erstellt wird.
  • @ObservedObject — zum Abonnieren von Änderungen externer ObservableObject-Objekte.
  • @EnvironmentObject — zum Weitergeben von Daten durch die Hierarchie der Ansichten ohne explizites Weiterreichen.
  • @AppStorage — zum bequemen Verknüpfen des Zustands mit UserDefaults.
  • @SceneStorage — zum Speichern des Zustands innerhalb des Lebenszyklus der Szene.

Diese Eigenschaften ermöglichen es, Änderungen an Daten effizient zu verfolgen und die Benutzeroberfläche automatisch zu aktualisieren, ohne zusätzlichen Code.

Beispiel für die Verwendung von @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
            }
        }
    }
}