Sobes.tech
Junior — Middle

Kādi jauni līdzekļi SwiftUI stāvokļa uzraudzībai un pārvaldībai tika ieviesti pēc iOS 13 versijas?

sobes.tech AI

Atbilde no AI

Pēc iOS 13, SwiftUI pievienoja jaunas iespējas stāvokļa uzraudzībai un pārvaldībai, paplašinot reaktīvās programmēšanas iespējas:

  • @StateObject — izveidot un pārvaldīt ObservableObject objektu dzīves ciklu iekšā skatā, nodrošinot, ka objekts tiek izveidots tikai vienu reizi.
  • @ObservedObject — abonēt ārēju ObservableObject izmaiņas.
  • @EnvironmentObject — nodot datus caur skatījumu hierarhiju bez tiešas nodošanas.
  • @AppStorage — ērti sasaistīt stāvokli ar UserDefaults.
  • @SceneStorage — saglabāt stāvokli scenas dzīves cikla laikā.

Šīs īpašības ļauj efektīvi uzraudzīt datu izmaiņas un automātiski atjaunināt interfeisu bez papildu koda.

@StateObject piemērs:

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
            }
        }
    }
}