Загрузить контроллер панели вкладок из AppDelegate
Я пытался понять это сам, но не смог.
Я хочу загрузить контроллер панели вкладок из моего AppDelegate (после успешного входа Google в приложение).
Я прочитал здесь, как загрузить ViewController из AppDelegate
Выполнить Segue из App Delegate Swift
Код в примере:
// Access the storyboard and fetch an instance of the view controller
let storyboard = UIStoryboard(name: "Main", bundle: nil);
let viewController: MainViewController = storyboard.instantiateViewController(withIdentifier: "ViewController") as! MainViewController;
// Then push that view controller onto the navigation stack
let rootViewController = self.window!.rootViewController as! UINavigationController;
rootViewController.pushViewController(viewController, animated: true);
В этом примере моему Tab Bar нужны как имя, так и идентификатор, насколько я понял.
Может кто-нибудь, пожалуйста, объясните мне это? Я не могу найти "идентификатор" на контроллере панели вкладок, только "Заголовок".
Кроме того, у меня нет представления контроллера навигации в моем приложении.
1 ответ
Решение
iOS 13 Обновление
Из версии. iOS 13, RootViewController будет запущен вscene
функция, расположенная в
SceneDelegate.swift
вместо того AppDelegate.swift
файл. что выглядит так.
Пример:
// Simple init
let mainSB: UIStoryboard = UIStoryboard(name: "Main", bundle: nil)
let loggedInTabController = mainSB.instantiateViewController(identifier: "loggedInTabController")
self.window!.rootViewController = loggedInTabController