Получите доступ к контроллеру представления из appdelegate, используя раскадровку
Я следовал этому учебнику Рэя ВенделичаRayWenderlichTutorial Tabbarcontroller с использованием раскадровок
Просто посмотрите изображение раскадровки. Рэй приближаетсяPlayersViewcontroller, используя приведенный ниже код
UITabBarController *tabBarController = (UITabBarController *)self.window.rootViewController;
UINavigationController *navigationController = [tabBarController viewControllers][0];
PlayersViewController *playersViewController = [navigationController viewControllers][0];
Когда я'Я пытаюсь получить доступ к playerDetailsViewController, используя следующий код, я получаю сбой. Давать сообщение
Оценки [2630: 60b]* Завершение приложения из-за неисследованного исключения »NSRangeException»причина: '* - [__ NSArrayI objectAtIndex:]: индекс 1 за пределами [0 .. 0] ' *** Первый стек бросить вызов: (0x30b49e83 0x3aea66c7 0x30a7fff9 0x3ddd1 0x3333eaad 0x3333e4f3 0x33338b41 0x332d3a07 0x332d2cfd 0x33338321 0x357b876d 0x357b8357 0x30b14777 0x30b14713 0x30b12edf 0x30a7d471 0x30a7d253 0x333375c3 0x33332845 0x3e0fd 0x3b39fab7) Libc ++ abi.dylib: оканчивающиеся неперехваченного исключением типа NSException
код
UITabBarController *tabBarController =
(UITabBarController *)self.window.rootViewController;
UINavigationController *navigationController =
[[tabBarController viewControllers] objectAtIndex:0];
PlayersViewController *playersViewController =
[[navigationController viewControllers] objectAtIndex:0];
UINavigationController *nav=[[navigationController viewControllers]objectAtIndex:1];
PlayerDetailsViewController *playerdetailsviewcontroller=[[nav viewControllers]objectAtIndex:0];
Я попробовал приведенный ниже код также,
UITabBarController *tabBarController =
(UITabBarController *)self.window.rootViewController;
UINavigationController *navigationController =
[[tabBarController viewControllers] objectAtIndex:0];
PlayersViewController *playersViewController =
[[navigationController viewControllers] objectAtIndex:0];
PlayerDetailsViewController *playerdetailsviewcontroller=[[navigationController viewControllers]objectAtIndex:1];
где я получаю сбой с сообщением
NSRangeException»Причина:*** - [__ NSArrayI objectAtIndex:]: индекс 1 за пределами [0 .. 0] '
Изображение раскадровки
В основном я хочу получить доступ к PlayerdetailsViewcontroller из appdelegate. Я думаю я'Я что-то упустил, есть мысли?