swift3.0 有很大变化,其中之一就是NSNotification使用跟原来不一样,以前NSNotification name是String;3.0中定义了一个类型NSNotification.name;
使用时最好定义一个NSNotification.name 常量方便使用;
直接上代码:
- //通知名称常量
- 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)")
- }