Junior — Middle
¿Se puede explicar qué es un ObservableObject en el contexto de SwiftUI y cómo se usa para gestionar el estado?
sobes.tech AI
Respuesta de la IA
ObservableObject en SwiftUI es un protocolo que permite crear objetos con un estado observable. Cuando las propiedades de dicho objeto cambian, SwiftUI actualiza automáticamente las vistas relacionadas.
Para usar ObservableObject necesitas:
- Crear una clase que herede de
ObservableObject. - Marcar las propiedades que deseas seguir con la anotación
@Published. - En la vista, usar una propiedad con la anotación
@ObservedObjecto@StateObjectpara suscribirse a los cambios.
Ejemplo:
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()
}
}
}
En este ejemplo, al cambiar username, el texto en la interfaz se actualiza automáticamente.