swift3.0 有很大變化,其中之一就是NSNotification
使用跟原來不一樣丧肴,以前NSNotification name
是String
;3.0中定義了一個類型NSNotification.name
;
使用時最好定義一個NSNotification.name
常量方便使用荠卷;
下面廢話不多說直接上代碼:
- ***定義终吼,發(fā)送部分 ***
//通知名稱常量
let NotifyMsgRecvName = NSNotification.Name(rawValue:"notifyMsgRecvName")
//發(fā)送通知
NotificationCenter.default.post(name:NotifyMsgRecvName, object: nil, userInfo: notification.userInfo)
- ***增加監(jiān)聽接受部分 ***
//接受通知監(jiān)聽
NotificationCenter.default.addObserver(self, selector:#selector(didMsgRecv(notification:)),
name: NotifyMsgRecvName, object: nil)
//通知處理函數(shù)
func didMsgRecv(notification:NSNotification){
print("didMsgRecv: \(notification.userInfo)")
}
- 銷毀通知
deinit {
NotificationCenter.default.removeObserver(self)
}