J'ai ajouté un contrôle de navigation pour basculer entre les vues dans mon application. Mais certaines vues ne devraient pas avoir de bouton «Retour» (le titre précédent). Des idées sur la façon de masquer le bouton de retour?
ios
objective-c
iphone
navigation
uinavigationcontroller
Chilly Zhong
la source
la source
self.navigationItem.leftBarButtonItem = nil;
. Si vous avez défini explicitement leftbarbuttonitem, vous pouvez l'utiliserself.navigationItem.leftBarButtonItem = nil;
.self.navigationItem.hidesBackButton = YES;
La meilleure façon est de les combiner, donc cela masquera le bouton retour même si vous le configurez manuellement:
la source
cacher le bouton de retour avec le code ci-dessous ...
ou
Aussi, si vous avez personnalisé,
UINavigationBar
essayez le code ci-dessousla source
Dans Swift :
Ajoutez ceci au contrôleur
la source
Utilisez le code:
la source
Dans la fonction viewDidLoad de l'UIViewController, utilisez le code:
la source
N'oubliez pas que vous devez l'appeler sur l'objet qui a le contrôleur de navigation. Par exemple, si vous avez un contrôleur nav poussant sur un contrôleur de barre d'onglets avec un RootViewController, appeler
self.navigationItem.hidesBackButton = YES
le RootViewController ne fera rien. Il faudrait en fait appelerself.tabBarController.navigationItem.hidesBackButton = YES
la source
N'oubliez pas que nous avons maintenant le geste de glisser vers l'arrière. Vous souhaiterez probablement supprimer cela également. N'oubliez pas de le réactiver si nécessaire.
la source
Ajoutez ce code dans votre contrôleur de vue
la source
Pour moi, rien de ce qui précède ne semblait fonctionner, cela n'avait aucun effet visuel. J'utilise des storyboards avec une vue qui est "intégrée" dans un contrôleur de navigation.
Ensuite, au niveau du code, j'ajoute mes éléments menuItems et pour une raison quelconque, le "backButton" est visible lors du débogage visuel de la hiérarchie des vues, et mon icône menuItem s'affiche sous le "bouton retour" invisible.
J'ai essayé les réglages, comme suggéré dans les différentes méthodes de crochet et cela n'a eu aucun effet. Ensuite, j'ai essayé une approche plus brutale et j'ai réitéré la sous-vue, qui n'a également eu aucun effet.
J'ai inspecté la taille de mes icônes et j'ai semblé aller bien. Après avoir fait référence à la Apple Human Interface Guideline, j'ai confirmé que mes icônes étaient correctes. (1 pixel plus petit dans mon cas 24px 48px 72px).
La partie la plus étrange est alors la solution réelle ...
Lorsque vous ajoutez l'élément BarButton, donnez-lui un titre avec au moins un caractère , dans mon cas, un caractère espace.
Espère que cela aide quelqu'un.
la source
Ça ne marchait pas pour moi dans tous les cas quand je mets
self.navigationItem.hidesBackButton = YES;
dans viewWillAppear ou ViewDidLoad, mais a parfaitement fonctionné lorsque je l'ai défini à l'init de viewController.
la source
essaye celui-là -
self.navigationController?.navigationItem.hidesBackButton = true
la source
Dans c # ou Xamarin.ios, this.NavigationItem.HidesBackButton = true;
la source
si vous utilisez ce bloc de code dans didLoad ou loadView a fonctionné mais n'a pas fonctionné parfaitement. Si vous regardez attentivement, vous pouvez voir que le bouton de retour se cache lorsque votre vue se charge.
Quelle est la solution parfaite?
Ajoutez le composant BarButtonItem de componentView (Commande + Maj + L) à votre barre de navigation viewControllers cible.
Sélectionnez BarButtonItem set Title = "" dans le panneau de droite
la source