我想在点击通知时在特定 View Controller 中显示推送通知,并且还想将数据从通知发送到 View Controller 。我正在使用 swift 进行开发
最佳答案
正如 @luzo 所指出的,通知是发送事件已发生的信息以与 View Controller 进行通信的方式。该通知还有一个 userinfo 参数,该参数接受您想要与通知一起发送到 View Controller 的数据字典。
在 Swift 3 中,将其添加到点击按钮:
let center = NotificationCenter.default
center.post(name: Notification.Name(rawValue: "nameOfNotification"),
object: nil,
userInfo:["id":"data"])
并在 View Controller 中注册通知的 id 并添加函数引用:
let center = NotificationCenter.default
center.addObserver(forName:NSNotification.Name(rawValue: "nameOfNotification"), object:nil, queue:nil, using:notifDidConnect)
并添加函数实现:
func notifDidConnect(notification:Notification) -> Void {
guard let userInfo = notification.userInfo,
let id = userInfo["id"] as? String else {
print("error occured")
return
}
print("notification received")
}
关于swift - 当快速点击远程推送通知时调用特定的 View Controller ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43626374/