8 votes

Impossible de masquer la barre de navigation lors de l'intégration de swiftUI dans UIkit

Je tente de masquer la barre de navigation en insérant du swiftUI à l'intérieur d'un UIViewController UIKit comme ceci :

override func viewWillAppear(_ animated: Bool) {
   super.viewWillAppear(animated)
   self.navigationController?.setNavigationBarHidden(true, animated: animated)

Mais elle ne disparaît pas. En revanche, quand j'enlève le swiftUI, ça marche. Est-ce que quelqu'un sait comment résoudre ce problème ?

Édition :

J'instancie une vue de cette manière let controller = UIHostingController(rootView:view()) où la vue est le swiftUI et ensuite j'ajoute cela à la UIView() comme vous le feriez avec n'importe quel élément UIKit.

-1voto

Bartu Akman Points 199

Savez-vous où vous placez la fonction UIKit à l'intérieur de SwiftUI ?

à l'intérieur de

var body: some View {

}

Vous devez appeler votre classe ViewControllerWrapper, cette classe doit inclure certaines méthodes pour utiliser votre classe UIKit. L'implémentation de UIViewControllerRepresentable est également nécessaire.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X