не может привести LaunchViewController к UINavigationController - PullRequest
0 голосов
/ 07 января 2019

Я пытаюсь проверить состояние сети из AppDelegate.swift вместо проверки из LaunchViewController.

Я написал showOfflinePage в AppDelegate, когда я закрывал свою сеть, у меня есть приведенная ошибка

Не удалось привести значение типа 'reachability_playground.LaunchViewController' (0x1095b5f20) для 'UINavigationController' (0x114bb2a20). 2019-01-06 16: 42: 04.079430-0500 детская игровая площадка [2781: 93635] Не удалось приведенное значение типа 'reachability_playground.LaunchViewController' (0x1095b5f20) для UINavigationController (0x114bb2a20).

   private func showOfflinePage() -> Void {
        DispatchQueue.main.async {
            let storyboard = UIStoryboard(name: "Main", bundle: nil);
            let viewController: LaunchViewController = storyboard.instantiateViewController(withIdentifier: "LaunchViewController") as! LaunchViewController;

            // Then push that view controller onto the navigation stack
            let rootViewController = self.window!.rootViewController as! UINavigationController
            rootViewController.pushViewController(viewController, animated: true);
        }
    }

1 Ответ

0 голосов
/ 07 января 2019

В соответствии с сообщением об исключении, ваш корневой контроллер представления является экземпляром LaunchViewController, а не экземпляром UINavigationController, поэтому принудительное снижение происходит сбой.

Вам необходимо проверить раскадровку и убедиться, что сцена точки входа является контроллером навигации.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...