J'ai tabBarController avec 6 vues. Par défaut, tabBarController charge la première vue, j'ai besoin de charger la vue # 6 au démarrage de mon application, donc dans mon tabBarController j'ajoute à viewWillAppear
[self.tabBarController setSelectedIndex:6];
, D'accord. Dans mon sharepoint vue # 3 j'ai 2 vues modales que je crée dans le storyboard. Quand j'appuie sur un button, je charge ma vue modale, et quand je la ferme, [self dismissModalViewControllerAnimated:YES]
; (J'étais dans la vue # 3) Je vois la vue # 6, mais je dois revenir à la vue # 3, donc si je comprends bien quand j'appelle mon modalView il décharge mon tabBarController et quand je le ferme charge encore tabBarController avec vue # 6, mais j'ai besoin de voir ma vue # 6 où j'appelle mon modalView, comment puis-je le réparer?
PS J'espère que vous comprenez mon anglais
Il semble que vous avez ajouté [self.tabBarController setSelectedIndex:6];
pour viewWillAppear
au lieu de viewDidLoad
. Il n'y a pas viewWillLoad là.
Faites quelque chose comme ça dans la méthode viewDidAppear de votre controller de barre d'tabs, donc il ne définit que selectedIndex quand l'application démarre:
-(void)viewDidAppear:(BOOL)animated { [super viewDidAppear:animated]; static BOOL isFirst = YES; if (isFirst) { [self setSelectedIndex:6]; isFirst = NO; } }
Je change l'ordre des éléments dans mon tabBarController dans le storyboard, change le nombre de vues dans le code et tout fonctionne. Merci à tous.