Sobes.tech
Junior — Middle

Vai varat izskaidrot, kas ir ObservableObject SwiftUI kontekstā un kā tas tiek izmantots stāvokļa pārvaldībai?

sobes.tech AI

Atbilde no AI

ObservableObject SwiftUI ir protokols, kas ļauj izveidot objektus ar novērojamu stāvokli. Kad šāda objekta īpašības mainās, SwiftUI automātiski atjaunina saistītās skatus.

Lai izmantotu ObservableObject, ir jā:

  • Izveido klasi, kas manto no ObservableObject.
  • Atzīmē īpašības, kuras jāseko, ar @Published anotāciju.
  • Skatā izmantot īpašību ar @ObservedObject vai @StateObject, lai abonētos uz izmaiņām.

Piemērs:

class UserSettings: ObservableObject {
    @Published var username: String = "Guest"
}

struct ContentView: View {
    @StateObject var settings = UserSettings()

    var body: some View {
        VStack {
            Text("Hello, \(settings.username)!")
            TextField("Username", text: $settings.username)
                .textFieldStyle(RoundedBorderTextFieldStyle())
                .padding()
        }
    }
}

Šajā piemērā, kad username mainās, teksts interfeisā automātiski tiek atjaunināts.