Подтвердить что ты не робот

Получить экземпляр ViewController из AppDelegate в Swift

Я пытаюсь загрузить определенный ViewController из делегата приложения в swift, когда пользователь нажимает кнопку UILocalNotification. Я понял, что это называется в этой функции:

func application(application: UIApplication!, didReceiveLocalNotification notification: UILocalNotification!)

Но когда я пытаюсь получить доступ к одному из открытых ViewControllers, я думаю, что он возвращает null, потому что мое приложение терпит крах. Вот что я пытаюсь:

var rootViewController = self.window!.rootViewController
var storyBoard = rootViewController.storyboard
var setViewController = storyBoard.instantiateViewControllerWithIdentifier("CurrentShows") as ViewController_CurrentShows

rootViewController.navigationController.popToViewController(setViewController, animated: false)
setViewController.reloadData()

Он врезается в строку popToViewController.

4b9b3361

Ответ 1

Вы можете попробовать:

let rootViewController = self.window!.rootViewController
let mainStoryboard: UIStoryboard = UIStoryboard(name: "Main", bundle: nil)
let setViewController = mainStoryboard.instantiateViewControllerWithIdentifier("CurrentShows") as! DetailViewController
rootViewController?.navigationController?.popToViewController(setViewController, animated: false)