Fiche 13.02
Fiche 13.02 — Intégrer SwiftUI dans UIKit
Objectif
Savoir afficher une vue SwiftUI dans un projet UIKit existant avec UIHostingController.
C’est important car beaucoup d’entreprises ont encore des apps UIKit et migrent progressivement vers SwiftUI.
1. L’idée à comprendre
UIHostingController est un UIViewController UIKit qui contient une vue SwiftUI.
Texte
Ça permet d’ajouter de nouveaux écrans SwiftUI dans une app UIKit sans tout réécrire.
2. Créer une vue SwiftUI classique
Swift
3. Afficher SwiftUI depuis UIKit
Swift
Ici, l’écran UIKit contient entièrement une vue SwiftUI.
4. Pousser un écran SwiftUI dans une navigation UIKit
Swift
C’est très utile dans une migration progressive.
5. Présenter une vue SwiftUI en modal
Swift
6. Passer une action SwiftUI vers UIKit
Tu peux passer une closure à la vue SwiftUI.
Swift
Côté UIKit :
Swift
Attention à [weak self] pour éviter les retain cycles.
7. Migration progressive UIKit vers SwiftUI
Une stratégie réaliste en entreprise :
Texte
Tu n’as pas besoin de transformer toute l’app d’un coup.
Résumé
UIHostingControllerpermet d’afficher SwiftUI dans UIKit.- On peut l’ajouter comme enfant, le pousser dans une navigation ou le présenter en modal.
- Les closures permettent de renvoyer des actions SwiftUI vers UIKit.
- C’est la technique principale pour migrer progressivement une app UIKit vers SwiftUI.