Comment puis-je masquer une barre de navigation du premier ViewController ou d'un ViewController particulier dans swift?
J'ai utilisé le code suivant dans viewDidLoad()
:
override func viewDidLoad() {
super.viewDidLoad()
self.navigationController?.isNavigationBarHidden = true
}
et aussi sur viewWillAppear
:
override func viewWillAppear(animated: Bool) {
self.navigationController?.isNavigationBarHidden = true
}
Les deux méthodes masquent le contrôleur de navigation de tous les ViewControllers.
ios
swift
uinavigationcontroller
uinavigationbar
Aby Mathew
la source
la source
Réponses:
Si vous savez que toutes les autres vues doivent avoir la barre visible, vous pouvez utiliser
viewWillDisappear
pour la remettre à nouveau visible.Dans Swift:
la source
Swift 3
la source
self.
pas nécessaire.Vous pouvez réafficher
navigationController
enviewWillDisappear
Swift 3
la source
Vous pouvez également créer une extension pour cela afin que vous puissiez réutiliser l'extension sans l'implémenter encore et encore dans chaque contrôleur de vue.
Vous pouvez donc utiliser les méthodes d'extension comme ci-dessous
la source
Dans Swift 3, vous pouvez également utiliser la propriété isNavigationBarHidden pour afficher ou masquer la barre de navigation
la source
Façons d'afficher la barre de navigation dans Swift:
la source
Façons de masquer la barre de navigation dans Swift:
la source
mais uniquement lorsqu'il fait partie d'un UINavigationController
faites-le faux quand vous le voulez
la source
J'utilise une variante de ce qui précède et j'isole les sections de mon application à intégrer dans différents NavControllers. De cette façon, je n'ai pas à réinitialiser la visibilité. Très utile dans les séquences de démarrage, par exemple.
la source
la source
Appelez la méthode set hide dans la vue Apparaîtra et disparaîtra. si vous n'appelez pas, la méthode en vue disparaîtra avec le statut false. Elle masquera la barre de navigation dans la hiérarchie de navigation complète.
la source
Vous pouvez le faire à partir du contrôleur de fenêtre (Swift3)
la source