Переход к контроллеру навигации внутри панели вкладок

#ios #swift #navigation #viewcontroller

#iOS #swift #навигация #viewcontroller

Вопрос:

Вот как выглядит моя раскадровка:

введите описание изображения здесь

Первый контроллер просмотра слева — это начальный VC, и он решает, к какому VC перейти, если вы вошли в систему или нет. Я не решил внедрить контроллер панели вкладок, чтобы иметь панель вкладок. Однако мне нужен навигационный контроллер, идущий к каждому VC, выходящему из панели вкладок.

Если я использую этот код для навигации, он показывает черный экран (он отлично работал до добавления контроллера панели вкладок).:

 let mainNavController = storyboard?.instantiateViewController(identifier: Constants.Storyboard.mainNavController)
view.window?.rootViewController = mainNavController
view.window?.makeKeyAndVisible()
 

Если я использую этот код, все переходы отображаются модально:

 let viewController = storyboard?.instantiateViewController(identifier: Constants.Storyboard.homeViewController) as? HomeViewController
view.window?.rootViewController = viewController
view.window?.makeKeyAndVisible()
 

И в качестве последнего средства я попытался перейти прямо к контроллеру панели вкладок, но затем я получил эту ошибку:

Раскадровка (<UIStoryboard: 0x600000e88840>) не содержит контроллера представления с идентификатором TabBarController

Итак, моя проблема в том, что я хочу программно перейти от контроллера представления к VCS с вкладками и использовать навигационный контроллер, чтобы все разделенные контроллеры представления не отображались модально.

(Я пробовал использовать отдельные навигационные контроллеры для каждого из VCS с вкладками, но это также показывает черный экран)

Это был оригинал с VCS с вкладками, имеющими отдельные контроллеры навигации:

введите описание изображения здесь

И ошибка, которую я получил при попытке программно перейти к этому, была

Раскадровка (<UIStoryboard: 0x600000e88840>) не содержит контроллера представления с идентификатором TabBarController

Даже если это так

Комментарии:

1. В вашей раскадровке я вижу переход от NavigationController к UITabBarController если вы пытаетесь поместить UITabBarController в стек NavigationController, который вы не можете, вы не можете встроить NavigationController в UITabBarController

2. Как я уже сказал в вопросе, я сказал, что это последнее средство, в скобках в конце объясняется, как у меня это было раньше