TabBarController unLoad сам после вызова modalView

У меня есть tabBarController с 6 видами. Поскольку по умолчанию tabBarController загружает первое представление, мне нужно загрузить представление # 6 при запуске приложения, поэтому в моем tabBarController я добавляю к viewWillAppear [self.tabBarController setSelectedIndex:6];, ok. На мой взгляд, у № 3 есть 2 модальных представления, которые я создаю в раскадровке. Когда я нажимаю кнопку, я загружаю свой модальный вид, а когда закрываю его [self dismissModalViewControllerAnimated:YES]; (Я был на виду # 3) Я вижу вид # 6, но мне нужно вернуться к просмотру №3, поэтому, если я правильно понял, когда я вызываю свой modalView, он выгружает мой tabBarController, а когда я закрываю его, снова загружайте tabBarController с представлением # 6, но мне нужно увидеть мой вид №6, где я вызываю свой modalView, как я могу его исправить?

P.S. Надеюсь, вы понимаете мой английский.

Ответ 1

Я изменяю порядок элементов в своем tabBarController в раскадровке, меняю количество просмотров в коде, и все работает. Спасибо всем.

Ответ 2

Похоже, вы добавили [self.tabBarController setSelectedIndex:6]; в viewWillAppear вместо viewDidLoad. Здесь нет viewWillLoad.

Ответ 3

Сделайте что-то подобное в методе viewDidAppear вашего контроллера панели вкладок, поэтому он устанавливает только выбранноеIndex при запуске приложения:

-(void)viewDidAppear:(BOOL)animated {
    [super viewDidAppear:animated];
    static BOOL isFirst = YES;
    if (isFirst) {
        [self setSelectedIndex:6];
        isFirst = NO;
    }
}