Приложение попыталось представить модальный контроллер вида на себя - PullRequest
0 голосов
/ 31 августа 2018
let storyboard = UIStoryboard(name: "Main", bundle: Bundle.main)
if userSignedInGlobal == "success"{
    if let mainTabController = storyboard.instantiateViewController(withIdentifier: "MainTabController") as?  MainTabController{
        mainTabController.present(mainTabController, animated: true, completion: nil)
    }
}

Завершение работы приложения из-за необработанного исключения «NSInvalidArgumentException», причина: «Приложение попыталось представить контроллер модального представления на себе. Представляем контроллер. '

Мне нужно перейти на страницу после аутентификации приложения с помощью firebase, чтобы я использовал приведенный выше код после проверки подлинности. Как мне исправить эту ссылку ссылки или код, объясняющий, как туда добраться будет достаточно.

1 Ответ

0 голосов
/ 31 августа 2018

Если вы находитесь в UIViewController, измените эту строку:

self.present(mainTabController, animated: true, completion: nil)

Если вы находитесь в Appdelegate, тогда установите vc в качестве корневого контроллера представления свойства window:

let storyboard = UIStoryboard(name: "Main", bundle: Bundle.main)
if userSignedInGlobal == "success"{
    if let mainTabController = storyboard.instantiateViewController(withIdentifier: "MainTabController") as?  MainTabController{
        window?.rootViewController = mainTabController
        window?.makeKeyAndVisible()
    }
}
...