Problème de barre de navigation
Sur un projet CoreData. J'ai donc 3 niveaux de Fichiers (RelationShips) Projet CheckListe ("Gercofis" GitHub), en chantier.
Je fais donc un NavigationController, mais celui-ci semble inclure que le fichier 1 et 2, donc pour le 3 j'ajoute une NavigationBar. Le navigationController peut-il contenir les 3 niveaux, si oui comment ?
Pour naviguer vers un niveau descendant je mets bouton/Segue vers cette scène. Et pour revenir Je refais un Segue remontant, est-ce une bonne manipe ? Ou devrais valider le Segue ?
Je constate que la barre du NavigationController et son titre n'apparaît pas tout le temps (dans le StoryBoard) et qu'en bricolant il ne prend plus la scène 1 et 2, mais la scène 2 et 3...et plus la scène 1.
Bref je patauge un peu et vu que c'est l'essentiel de mes démarches.
A te lire, Cordialement - Gilles
PS: Après plusieurs bricolages savants J'ai mis une NavigationBar par TableView,et viré le NavigationController mais celle-ci est située SOUS la CellView, bon ça va mais ça n'est pas glop !!
Réponses
J'ai compris que pour revenir il fallait quitter la View en question, en somme dépiler...
Par contre sur NavigationController, je patauge toujours ?
C'est de l'iOS, non ?
J'avoue que je n'ai pas compris le rapport avec CoreData.
Le UINavigationController embarque les UIViewControllers et fait des push (aller au prochain), et des pop (aller au précédent).
Si tu veux que le titre apparaisse, il faut overrider
self.title
du UIViewController qui est présenté, ou l'écrire dans le StoryBoard.C'est vrai CoreData n'a rien voir...
Globallement je fais 3 TableViewController et fait un "Embed in / NavigationController" J'ai donc bien la barde navigation sur la première TableViewController, par contre sur les suivantes ça cafouille et j'ai donc du mal a mettre mes bouton de navigation dans les suivantes, depuis le premier post j'y suis parvenu mais sans trop savoir comment ? En tous cas on peut installer les boutons hauts de navigation le bouton de retour s'installe tout seul, mais c'est curieux la barre de navigation n'apparait pas dans StoryBoard ?
Tu as connecté les deuxième et troisième controllers au premier ?
Tous les viewControllers sur un "stack" dans un UINavigationController
Je suis dans ce cas de figure.
Un stack (en anglais) veut dire une pile en français.
Comme dit Larme, on empile les viewControllers sur le premier, qui est embarqué dans le navigationController. Mais il ne faut qu'embarquer le premier dans le navigationController.
Ça te donnerait le navBar sur tous les viewControllers et, là, tu trouveras les boutons de navigation pour le retour, il ne faut que ajouter les boutons, soit sur le navBar, soit sur les views, pour naviguer d'un controller au prochain.
Il n'est pas nécessaire de créer les segues de retour, il y a un autre mechanism qui est inclus automatiquement avec les boutons de retour sur le navBar.
Porquoi tu as dit que la barre de navigation n'apparait pas ?
C'était revenu dans l'ordre avec les segues entre contrôleur ...
Par contre là maintenant c'est devenu le souk, les items de navigation deviennent inactifs, voir invisibles sur le storyboard et sur le simulateur. Le nom de la classe controller apparait a la place du titre ?
Les items (de navigation) deviennent inaccessibles je pense que c'est une autre problème cette fois...
Et j'avoue baliser un peu quand même...