swift3.0 有很大变化,其中之一就是NSNotification使用跟原来不一样,以前NSNotification name是String;3.0中定义了一个类型NSNotification.name;
使用时最好定义一个NSNotification.name 常量方便使用;
直接上代码:
[objc] view plain copy 在CODE上查看代码片派生到我的代码片
//通知名称常量
let NotifyChatMsgRecv = NSNotification.Name(rawValue:"notifyChatMsgRecv")
//发送通知
NotificationCenter.default.post(name:NotifyChatMsgRecv, object: nil, userInfo: notification.userInfo)
//接受通知监听
NotificationCenter.default.addObserver(self, selector:#selector(didMsgRecv(notification:)),
name: NotifyChatMsgRecv, object: nil)
//通知处理函数
func didMsgRecv(notification:NSNotification){
print("didMsgRecv: (notification.userInfo)")
}