2010-08-03 5 views
0

J'ai un UITabBarController qui contrôle deux onglets, Principal et Paramètres.UITabBarController et passer d'un onglet à l'autre par le code

Maintenant, je voudrais, dans certaines conditions, passer de l'onglet principal à l'onglet Paramètres (comme s'il y a un paramètre que l'utilisateur doit faire avant de pouvoir utiliser l'application). Je sais que je peux le faire depuis AppDelegate, mais ma condition peut se produire lorsque je cours dans la vue principale.

J'ai essayé quelque chose comme ceci:

AppDelegate *delegate = [[UIApplication sharedApplication] delegate]; 
delegate.rootController.selectedIndex = 1; 

Où rootController est un UITabBarController défini dans mon AppDelegate.

Le résultat du code ci-dessus est que l'onglet change (par exemple, l'onglet Paramètres est affiché comme actif) mais il affiche toujours la vue principale.

Je suis sûr qu'il ya une solution simple à ce que je dois avoir manqué ...

Toutes les suggestions sont appréciés.

Répondre

2

Avez-vous essayé:

self.tabBarController.selectedIndex = 1; 

dans le premier viewController?

+0

Merci. Je l'ai essayé. Ayez #import "AppDelegate.h" mais obtenez toujours l'avertissement "Request for member" rootController "dans quelque chose qui n'est pas une structure ou une union" lors de la construction. – Structurer

Questions connexes