ios - 在 Swift 中从 AppDelegate 获取 ViewController 的实例

标签 ios swift appdelegate

当用户单击 UILocalNotification 时,我正在尝试从 app delegate 中快速加载特定的 ViewController。我发现这是在这个函数中调用的:

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

但是当我尝试访问其中一个打开的 ViewController 时,我认为它返回 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 行上崩溃。

最佳答案

你可以试试:

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)

swift 3:

let mainStoryboard = UIStoryboard(name: "Main", bundle: nil)
let controller = mainStoryboard.instantiateViewController(withIdentifier: "viewController")
self.present(viewController, animated: true, completion: nil)

关于ios - 在 Swift 中从 AppDelegate 获取 ViewController 的实例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24638376/

相关文章:

ios - 使节点受重力影响没有影响; swift

ios - 如何在 iOS 的一个地方处理常见错误(可以在一个地方的每个 UIViewController 中引发)?

ios - 来回切换时锁定的 ViewController 方向中断

ios - 需要帮助解决 Apple 崩溃报告

ios - 将小数格式化为特定小数位数的函数

swift - 如何在自定义类中使用 Firebase?

ios - 使用 withLatestFrom 收集存储的变量属性

ios - FirebaseUI 无法通过 Facebook 进行身份验证

ios - 突出显示没有多个图像的 UIButton

iphone - iOS - 旋转 View 显示背景