Выберите UIViewController непосредственно из UITabBarController и через UINavigationController - PullRequest
0 голосов
/ 15 июня 2019

Я запускаю свое приложение с помощью контроллера панели вкладок [TBC]. Я использую один Item1 для выбора VC1 (встроенного в NC контроллера навигации) через view controllers segue. VC1 подключен к VC2 через Show segue. Item2 TBC должен быть напрямую связан с CV2 (через view controllers segue).

TBC - Item1 -> NC -> VC1 +> VC2
        |                |
      Item2 -------------+

2 возможности:

  1. Если я подключу TBC к VC2, используя view controllers segue (как показано выше), я потеряю панель навигации верхнего экрана в VC2 (если используется Item2), что позволило бы мне вернуться к CV1 (который желательно).

  2. Если я сделаю второй view controllers переход от TBC к VC1, я мог бы создать собственный класс UINavigationController, который мог бы определить, какой переход (Item1 или Item2) был выбран. Если выбран Item1, должен быть показан VC1. Если выбран Item2, должен быть показан VC2. Во-первых, я не знаю, как я могу определить в своем пользовательском классе UINavigationController, как определить, какой из 2 сегментов был выбран. Также значки предметов и названия Item1 и Items2 идентичны (что нежелательно!), И я не вижу никакой возможности изменить только значок / заголовок Item2 и оставить значок / заголовок Item1 как есть.

Как я могу подключить Item2 к VC2, сохранив панель навигации VC2 и имея иконку / заголовок Item1 для Item2?

1 Ответ

0 голосов
/ 15 июня 2019

Вы можете использовать идентификатор сегмента, чтобы различать два сегмента.

Вы можете указать идентификатор сегмента, выбрав segue и перейдя к идентификатору идентификатора на правой панели.

...