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)")
}