Swift 3.0 Notification通知的使用

//通知名称常量
let NotifyMsgName = NSNotification.Name(rawValue:"notifyMsg")

//注册通知监听
NotificationCenter.default.addObserver(self, selector:#selector(notifiAction(notification:)),
                                               name: NotifyMsgName, object: nil)

//通知处理函数
func notifiAction(notification:NSNotification){
        
    let userinfo = notification.userInfo //所属类型为 [AnyHashable : Any]? 尝试转换为 as! NSDictionary as! [String : Any],发现报错
    let key_value = userinfo?[AnyHashable("name")] as! String
    print(notification.description+" key="+key_value)
        
}


//post通知
NotificationCenter.default.post(name:NotifyMsgName, object: nil, userInfo: ["name":"xiaoming"])


//注销通知,在controller退出的时候注销
deinit {
    NotificationCenter.default.removeObserver(self)
}

你可能感兴趣的:(Swift 3.0 Notification通知的使用)