通知一般在mode與View需要交流(傳遞數(shù)據(jù))時(shí)使用晋南,或者也可以用于多線程的消息傳遞,也可是VC與VC或者VC內(nèi)部的信息傳遞,最常用的場(chǎng)景是頁(yè)面值的回傳羔砾。
下面就介紹一下使用方法
創(chuàng)建通知中心
設(shè)置監(jiān)聽(tīng)方法
設(shè)置通知的名字
NotificationCenter.default.addObserver(self, selector: #selector(test), name: NSNotification.Name(rawValue:"isTest"), object: nil)
實(shí)現(xiàn)通知監(jiān)聽(tīng)方法
@objc func test(nofi : Notification){
let str = nofi.userInfo!["post"]
print(String(describing: str!) + "this notifi")
}
點(diǎn)擊發(fā)送通知進(jìn)行
override func touchesBegan(_ touches: Set<UITouch>, with event: UIEvent?) {
NotificationCenter.default.post(name: NSNotification.Name("isTest"), object: self, userInfo: ["post":"NewTest"])
}
最后要記得移除通知
deinit {
/// 移除通知
NotificationCenter.default.removeObserver(self)
}
通知的一般使用流程就是這樣了负间,還有其他的使用流程就自己去嘗試吧