Usando UIKit en SwiftUI

Para usar vistas de UIKit en SwiftUI necesitamos el protocolo de SwiftUI UIViewRepresentable.

Conformar el protocolo UIViewRepresentable

Primero se crea una estructura implementando los dos métodos requeridos que son:

  • makeUIView: Se crea una instancia de la vista de UIKit que se quiere usar y se retorna
  • updateUIView: Se actualiza el estado de la vista de UIKit basado en los cambios en la vista de SwiftUI

Aquí vemos un ejemplo de como usar el protocolo UIViewRepresentable para integrar un UILabel en SwiftUI:

struct LabelView: UIViewRepresentable {
let text: String
func makeUIView(context: Context) -> UILabel {
let label = UILabel()
label.text = text
return label
}
func updateUIView(_ uiView: UILabel, context: Context) {
uiView.text = text
}
}

Ahora se puede usar esta estructura en una vista en SwiftUI como cualquier otra vista:

struct ContentView: View {
var body: some View {
LabelView(text: "Hola Mundo")
}
}
Ejemplo de un UILabel en SwiftUI

¿Ahora qué?

Podemos aprender a hacer uso del Coordinator y poder implementar los delegados de una vista de UIKit.

Comparte este artículo

Subscríbete a nuestro Newsletter

Mantente al día en el mundo de las aplicaciones móviles con nuestro blog especializado.

Artículos semanales

Todas las semanas artículos nuevos sobre el mundo de las aplicaciones móviles.

No spam

No te enviaremos spam, solo contenido de calidad. Puedes darte de baja cuando quieras.

Contenido de calidad

Nada de contenido generado de manera automática usando ChatGPT.

Recomendaciones

Tips indispensables sobre mejores prácticas y metodologías.

© 2024 AsyncLearn