是否有一个易于理解的模式如何发送 NSNotification(目标 C) | 通知(在 Swift 中)以及如何接收通知?代码片段?文档就该主题写了 150 页。想看一个简单的例子。
问问题
20016 次
3 回答
73
发送通知:
[[NSNotificationCenter defaultCenter] postNotificationName:@"MyCacheUpdatedNotification" object:self];
接收它:
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(cacheUpdated:) name:@"MyCacheUpdatedNotification" object:nil];
采取行动:
- (void)cacheUpdated:(NSNotification *)notification {
[self load];
}
并处理它:
[[NSNotificationCenter defaultCenter] removeObserver:self];
于 2010-04-20T16:52:59.360 回答
2
相同的 Swift 版本:
每当您需要发布通知时:
NotificationCenter.default.post(name: NSNotification.Name(rawValue: "UpdateAccepted"), object: self)
在您要接收通知的控制器上:
override func viewDidLoad(_ animated: Bool) {
super.viewDidLoad(true) {
NotificationCenter.default.addObserver(self, selector: #selector(updateAccepted(notification:)), name: NSNotification.Name(rawValue: "UpdateAccepted"), object: nil)
}
deinit {
NotificationCenter.default.removeObserver(self, name: NSNotification.Name(rawValue: "UpdateAccepted"), object: nil)
}
@objc func updateAccepted(notification: Notification) {
handleRefresh()
}
于 2019-06-29T14:15:00.297 回答
-1
注册推送通知配置文件并在您的应用程序中设置它,这里有一个链接来执行推送通知(请注意,您将需要一些服务器或捕获设备推送通知 ID 的东西,以便能够向这些设备发送通知)
接下来假设您使用 Windows Server 或与 .net 兼容的东西作为您的服务器,有一个很好的 C# api 编写用于向苹果服务器发送推送通知(一旦您拥有证书和注册的设备,您已存储在服务器中) ,这里有演示如何使用它,很酷这里有一个链接C# push notification src
差不多了...我使用 .Net 技术为您提供了快速解决方案,如果您使用的是其他东西,您可以四处浏览以查看您正在使用的平台中是否有可用的解决方案,我相信您会找到一些东西,如果不是您总是可以自己做:)
于 2010-04-20T15:54:51.030 回答