Xcode и Swift — невозможно создать экземпляр другого контроллера представления из AppDelegate

в этом приложении при первом использовании вы получаете 3 страницы приветствия. После последнего я сохраняю bool в true в UserDefaults, чтобы пропустить эти приветственные страницы в следующий раз, когда пользователь запустит приложение.

Для этого в AppDelegate.swift я делаю следующее:

func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool { // Override point for customization after application launch. if UserDefaultsVault.shared.getDidFinishIntro() == true { self.window = UIWindow(frame: UIScreen.main.bounds) let storyboard : UIStoryboard = UIStoryboard(name: «Main», bundle: nil) let mainVC = storyboard.instantiateViewController(withIdentifier: «mainPage») as UIViewController self.window?.rootViewController = mainVC self.window?.makeKeyAndVisible() } return true }

Я, конечно, добавил идентификатор раскадровки к моему контроллеру представления в раскадровке, и я также проверил с помощью точки останова, выполняется ли условие (и это правда).

Несмотря на это, главный контроллер не будет создавать экземпляр.

Я сделал другое приложение с этим кодом, и оно всегда работало!

Я что-то ошибся?

В вашем проекте есть SceneDelegate.swift файл?   —  person Lifetronic    schedule 17.06.2020

Здравствуйте, спасибо за ответ. да.   —  person Lifetronic    schedule 17.06.2020

stackoverflow.com/a/58208876   —  person Lifetronic    schedule 17.06.2020

Источник: ledsshop.ru

Стиль жизни - Здоровье!