1

Я уже решил проблему. Я просто публикую свои результаты, так как это может помочь другим.Контроллер навигации iOS не переключается на следующий контроллер просмотра

У меня есть UITabBarController с UINavigationController и UIViewController толкают на UINavigationController. Раньше у меня было только 2 вкладки на моем UITabBarController, но теперь у меня есть 6. Поэтому у меня есть кнопка «Больше», которую нужно нажать, чтобы увидеть дополнительные вкладки. Всякий раз, когда я пытаюсь нажать UIViewController на любом из моих вкладок в разделе «Больше», мое приложение не переключается на UIViewController. Функция viewDidAppear не вызвана или что-то еще.

Вот мой код:

if (newViewController == 0) 
    newViewController = [[NewViewViewController alloc] initWithNibName: @"NewViewControllerXIB" bundle: [NSBundle mainBundle]]; 

TestAppDelegate *appDelegate = (TestAppDelegate *)[[UIApplication sharedApplication] delegate]; 
[appDelegate.navController pushViewController: newViewController animated: true]; 
+0

Примите свой ответ. – Piyush

+0

Я буду, когда это позволит мне через два дня. – Someone13

ответ

0

Оказывается, если вы используете UITabBarController и контроллер имеет так много вкладок будут иметь кнопку «Далее» создана, и контроллер будет помещен в готовый UIMoreNavigationController. Поэтому вместо того, чтобы использовать контроллер навигации, используемый вашим делегатом общего назначения, вам необходимо использовать созданный для вас UIMoreNavigationController. Так что вы хотите сделать это вместо того, чтобы:

if (newViewController == 0) 
    newViewController = [[NewViewViewController alloc] initWithNibName: @"NewViewControllerXIB" bundle: [NSBundle mainBundle]]; 

[self.navigationController pushViewController: newViewController animated: YES]; 

Я собираюсь начать толкая все мои контроллеры просмотра к навигации контроллера он обособленно теперь. Урок выучен.

Смежные вопросы