实时将数据从 AppDelegate 传递到 ViewController (iOS) Swift 2

Pass data from AppDelegate to ViewController in realTime (iOS) Swift 2

我想使用 Apple 通知创建聊天,我想在收到通知时将数据传递到我的 Table 视图以更新它 我正在尝试做一个示例来测试如何将数据表单应用程序委托传递给 viewController 但它不起作用任何人都可以帮忙吗 我的ViewController代码

class ViewController: UIViewController {

  var fileDirectory: String = String()
  let delegate = UIApplication.sharedApplication().delegate as! AppDelegate

  override func viewDidLoad() {
      super.viewDidLoad()
      NSNotificationCenter.defaultCenter().addObserver(self, selector: #selector(ViewController.refreshView(_:)), name: "refreshView", object: nil)
  }

  func refreshView(notification: NSNotification) {
      fileDirectory = delegate.filePath
      print("tester")
  }

  override func didReceiveMemoryWarning() {
      super.didReceiveMemoryWarning()
  }
}

我想从 appDelegate 访问 refreshView 函数

您在 viewDidLoad() ViewController 中写下一行是正确的

NotificationCenter.default.addObserver(self, selector: #selector(ViewController.refreshView), name: "AnyThingYouWant", object: nil)
}

但是在你想调用ViewController.refreshView方法的appDelegate中添加这一行

NotificationCenter.default.post(name: "AnyThingYouWant", object: self)
}

如果你想在收到通知时调用 refreshView 方法,请在 didReceiveLocal/RemoteNotification 方法

的上面写上一行