Как показать ViewController (не модально) в UITabViewController
Я хочу показать ViewController внутри UITabController, но не отображать его модально. В приложении есть домашний экран с кучей кнопок, которые переключаются на другие ViewControllers. Другие контроллеры представления встроены в контроллер навигации. Теперь мне нужно показать один из ViewControllers из TodayExtension. В моем делегате приложения у меня есть это, но он представляет RequestorViewContoller модально без структуры вкладки или элемента управления навигацией.
let mainStoryboard: UIStoryboard = UIStoryboard(name: "Main", bundle: nil)
let requestor = mainStoryboard.instantiateViewController(withIdentifier: "RequestStoryboardID") as! RequestorViewController
let rootViewController = self.window!.rootViewController as! UITabBarController
rootViewController.present(requestor, animated: false, completion: nil)
1 ответ
Как то, что вы упоминаете, если selectedViewController
из UITabBarController
это UINavigationController
Вы могли бы сделать pushViewController
вместо.
Во-первых, вам нужно вывести текущее на экран UINavigationController
, Затем выполните pushViewController
с requestor
в качестве параметра.
presentedNavigationController = rootViewController.selectedViewController as! UINavigationController
presentedNavigationController.pushViewController(requestor, animated: true)