2016-03-24 4 views
0

Gardez à l'esprit avec la question suivante, je suis toujours un Noob iOS. Donc, je comprends comment cacher/afficher/recolorer la barre de navigation et autres joyeusetés. Mon prochain défi est que certains écrans ont besoin de la barre de navigation et d'autres pas. Lorsque mon application démarre, la barre de navigation est masquée, puis l'utilisateur peut cliquer sur Enregistrer ou se connecter (les deux écrans ont une barre de navigation).barre de navigation états, montrant et cachant la barre de navigation inférieure

Ces écrans ont donc le code pour afficher la barre de navigation tout le long tandis que le premier (écran de bienvenue) a le code pour masquer la barre de navigation.

Voici la question: Pourquoi est-ce que lorsque je commence mon application, la barre de navigation n'est pas là, mais quand je vais m'enregistrer/se connecter, puis appuyez sur le bouton retour pour retourner à la page d'accueil) alors la barre de navigation est toujours là, même si mon code pour la cacher est dans la méthode viewDidLoad? Comment puis-je résoudre ce problème?

Répondre

1

Vous pouvez essayer de déplacer la logique de l'affichage de la barre de navigation à la méthode ViewWillAppear, il vous suffit de la remplacer dans votre classe View Controller. Sinon, je suggère d'utiliser un contrôleur de vue séparé pour gérer vos écrans de connexion/enregistrement et d'utiliser uniquement des barres de navigation là où vous en avez besoin. Vous devez créer un contrôleur de vue dans votre storyboard avec vos écrans habituels et intégrer les écrans qui ont besoin de la barre d'onglets dans un contrôleur de navigation. Vous pouvez ensuite passer de votre contrôleur de vue habituel au contrôleur de navigation qui inclut vos onglets.

Hope this helps

+0

bien, il pourrait y avoir une meilleure solution à mon problème ... voir actuellement et à l'origine de mon plan était d'utiliser des gestes de glisser pour naviguer vers et depuis les écrans d'enregistrement (qui était bon), mais le problème est qu'il n'est pas entièrement intuitif pour l'utilisateur ... des idées? –

+0

Vous pouvez y parvenir en utilisant un contrôleur de vue de page, il suffit de changer le type d'animation, de sorte qu'il ne semble pas que vous tourniez des pages. Je l'ai utilisé dans une de mes applications pour exactement le même but, mais je l'ai fait avec le défilement vertical, il suffit d'ajouter une petite étiquette "glisser pour enregistrer" ou quelque chose comme ça. –