J'ai une application universelle et sur la version iPad que j'utilise UISplitViewController
pour créer une interface similaire à l'application Mail.
J'avais du mal à pousser de nouvelles vues de détail, alors j'ai décidé d'utiliser un UINavigationController
pour pouvoir simplement pousser et afficher les vues au besoin. Cependant, je ne souhaite pas utiliser la vue de navigation ou une barre d'outils. Mais quoi que je fasse, je ne peux pas cacher la barre de navigation.
J'ai essayé de décocher "Afficher la barre de navigation" dans IB, et j'ai également essayé de définir:
[self.navigationController setNavigationBarHidden:YES];
dans le viewDidLoad
/ viewDidAppear
/ viewWillAppear
. Je l'ai également essayé dans chacune des vues qui seront poussées. Rien ne fonctionne.
Y a-t-il quelque chose qui me manque ici? Est-il possible d'avoir un UINavigationController
sans barre d'outils ou barre de navigation?
la source
self
est-elle une instance?Réponses:
Vous devriez pouvoir effectuer les opérations suivantes:
où self.navigationController est (évidemment) une instance de UINavigationController. Cela semble fonctionner pour moi, mais je ne l'ai testé que brièvement avant de le publier.
la source
- (void)viewWillAppear:(BOOL)animated { self.navigationController.navigationBar.hidden = YES; }
-ci et cela fonctionneSi vous ne voulez pas de barre de navigation et que vous voulez que le contenu soit ajusté à l'endroit où la barre de navigation serait normalement, vous devez utiliser
Cela vous donne un résultat comme celui-ci:
Tandis que
self.navigationController.navigationBar.hidden = YES;
vous donne un espace où la navigationBar devrait être. Comme ça:la source
Dans Xcode 4.3.2:
Dans la catégorie Contrôleur de navigation, vous avez deux cases à cocher:
[] Affiche la barre de navigation
[] Affiche la barre d'outils
A travaillé pour moi ...
la source
Swift 4
Je le cache dans la vue
Ensuite, vous pouvez le remettre lorsque vous appuyez sur une séquence (si vous voulez avoir le bouton de retour sur la vue suivante)
la source
Swift 3 par programmation
ou
Remarque: je n'ai pas vu de différence entre ces deux approches de test sur iOS 10.
la source
Toutes ces réponses laissent toujours un espace en haut pour la barre d'état - ajoutez cette ligne pour supprimer cela également:
la source