Junior — Middle
Quais métodos e mecanismos no SwiftUI são utilizados para atualizar a interface do utilizador quando os dados mudam?
sobes.tech IA
Resposta da IA
No SwiftUI, a atualização da interface do utilizador ao alterar os dados é realizada através de um mecanismo reativo baseado em propriedades com envoltórios de estado:
@State— para o estado local dentro da View. Quando o valor muda, a View é automaticamente redesenhada.@Binding— para passar uma referência ao estado entre Views.@ObservedObjecte@StateObject— para acompanhar objetos que implementam o protocoloObservableObject, os quais publicam alterações através de propriedades@Published.@EnvironmentObject— para passar objetos através da hierarquia de Views.
Exemplo:
class UserData: ObservableObject {
@Published var name: String = ""
}
struct ContentView: View {
@StateObject var userData = UserData()
var body: some View {
VStack {
TextField("Digite o nome", text: $userData.name)
Text("Olá, \(userData.name)!")
}
}
}
Ao alterar userData.name, o SwiftUI atualiza automaticamente o texto na tela. Essa abordagem permite descrever a UI de forma declarativa, e o framework cuida da atualização quando os dados mudam.