Sobes.tech
Middle+

Kako učiniti klasu posmatranom od iOS 17?

sobes.tech АИ

Одговор од АИ

Начињено од iOS 17, за да направите класе наблюљивом, можете користити нови протокол Observable из Swift Concurrency. Уместо уобичајеног ObservableObject са @Published, сада класа треба да одговара протоколу Observable и да користи асинхрона ток промена.

Пример:

import SwiftUI
import Observation

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

// Коришћење у SwiftUI
struct ContentView: View {
    @StateObject private var model = MyModel()

    var body: some View {
        Text("Вредност: \(model.value)")
    }
}

Кључни елемент је annotation @Observable испред класе, која аутоматски генерише потребну логику за праћење промена. Ово олакшава креирање наблюдавих модела и њихову интеграцију са SwiftUI.