Итак, у меня есть tabBar
. Нажатие на определенную вкладку приведет пользователя к viewController
, который встроен в navigationController
. Чтобы включить navigationController
, я создаю экземпляр viewController
, используя
myViewController = [storyboard instantiateInitialViewController];
вместо
myViewController = [storyboard instantiateViewControllerWithIdentifier:@"myID"];
. Более поздний код выдвигает viewController
, но без navigationController
Это нормально до момента, когда я хочу передать данные в экземпляр myViewController
. Дело в том, что я не могу передать данные с экземпляром, ссылающимся на начальный viewController
(который является navigationController
), но я могу сделать это, используя экземпляр, ссылающийся непосредственно на myViewController
. Другими словами:
Это работает для получения данных (но не navigationController
):
viewController = [storyboard instantiateViewControllerWithIdentifier:@"experienceID"];
((ExperiencesListViewController*)viewController).experiences = self.experiences;
, и происходит сбой, если я пытаюсь добавить данные, но дает мне navigationBar
если я исключу данные настроек:
viewController = [storyboard instantiateInitialViewController];
((ExperiencesListViewController*)viewController).experiences = self.experiences;
Надеюсь, я объясню это достаточно хорошо. Дайте мне знать, если есть что-то, что мне нужно уточнить.
РЕДАКТИРОВАТЬ Моей первой мыслью было использование prepareSegue
, но это не срабатывает при перемещении между tabs
. Другая мысль заключается в том, чтобы каким-то образом получить доступ к myViewController
через экземпляр, но не уверен, как.