SwiftUI: Cómo implementar un init personalizado con variables @Binding
¡Hola! Soy nuevo en SwiftUI y estoy intentando crear una vista personalizada con un campo de entrada de texto. Necesito que la vista padre pueda pasar el control del estado a través de @Binding. Pero cuando intento agregar un init personalizado, Xcode se queja y dice que la propiedad $text no está inicializada. Aquí está mi código:
struct CustomTextField: View {
@Binding var text: String
var placeholder: String
// Intento hacer un init personalizado
init(placeholder: String, text: Binding<String>) {
self.placeholder = placeholder
self.text = text // Error: 'self' used before all stored properties are initialized
}
var body: some View {
TextField(placeholder, text: $text)
.textFieldStyle(RoundedBorderTextFieldStyle())
}
}
Entiendo que @Binding es un property wrapper, pero no puedo entender cómo inicializarlo correctamente dentro de un init personalizado.