Sobes.tech
Middle+

Ako spraviť triedu pozorovateľnou od iOS 17?

sobes.tech AI

Odpoveď od AI

Od iOS 17, aby ste urobili triedu pozorovateľnou, môžete použiť nový protokol Observable z Swift Concurrency. Namiesto bežného ObservableObject s @Published musí trieda teraz zodpovedať protokolu Observable a používať asynchrónny tok zmien.

Príklad:

import SwiftUI
import Observation

@Observable
class MyModel {
    var value: Int = 0
}

// Použitie v SwiftUI
struct ContentView: View {
    @StateObject private var model = MyModel()

    var body: some View {
        Text("Hodnota: \(model.value)")
    }
}

Kľúčovým prvkom je anotácia @Observable pred triedou, ktorá automaticky generuje potrebnú logiku na sledovanie zmien. To uľahčuje tvorbu pozorovateľných modelov a ich integráciu so SwiftUI.