2010-03-16 8 views
0

I ont un contrôleur de barre d'onglet et dans les deux éléments de la barre d'onglet i un dans chaque contrôleur de navigation. Je voudrais que chaque fois qu'un utilisateur s'en va et retourne à un élément de la barre d'onglets, il réinitialise le contrôleur de navigation.Remet voir les piles lorsque le contrôleur de racine est un onglet bar contrôleur

Si j'ai navigué dans l'un de la barre d'onglet, puis appuyez sur i un autre élément de tabulation et Retournons il me faut au début de la navigation.

Des idées?

Merci,

Répondre

1

Voici ce que cela fonctionne pour moi ...

J'ai fait la appDelegate un UITableBarViewControllerDelegate aussi. Après, dans IB j'ai connecté le tabbarcontrollerDelegate à appDelegate. Dans ce cas, délégué Interfaces App

Comme Ben dit, je puis mis en œuvre le abBarController: shouldSelectViewController sous InterfacesAppDelegate.m

3

Fixez-vous être le délégué du tabBarController, et chaque fois que vous obtenez un -tabBarController: shouldSelectViewController: message, appel -popToRootViewController sur le contrôleur de navigation de votre onglet.

+0

ok je suis presque tous, mais comment me défini comme le délégué .. Le projet a appDelegate. Comment définissez-vous le délégué et où devrais-je le faire ?? J'essayais de le faire dans viewDidUnload du contrôleur de navigation – gvalero87

+0

Vous devez vraiment comprendre les délégués pour faire beaucoup de progrès dans Objective C. Jetez un oeil à la documentation pour UITabBarController, mais fondamentalement: controller.delegate = self. –

+0

Je vais poster ma réponse, ce qui a fonctionné pour moi ... J'essayer de lire la documentation d'Apple pour les délégués, mais je ne comprends pas bien au-delà du sens général. C'est-à-dire, que les délégués font partie du code que vous pouvez appeler de partout et qu'il fait une action en renvoyant quelque chose à l'appelant. – gvalero87

Questions connexes