04|“通知”与“观察者模式”

作者: 大米的木头 | 来源:发表于2017-06-26 07:58 被阅读7次

    注意:

    1. 通知是一种一对N的关系。即,在一个地方发生了变化,其他地方的观察者(们)可以了解到变化。

    2.需要在初始化的时候设一个标识符,以区分不同的通知。

    //此处的getmessage就是一个标识符,可供其他地方的观察者匹配
    let notificationName = Notification.Name.init(rawValue: "getmessage")
    

    3.通知可能伴随着一些数据的传递,通过字典进行存储以及取出。

    NotificationCenter.default.post(name: notificationName, object: self, userInfo: ["message": message])
    

    4.在其他地方(类)接收通知

    //接收通知,通过标识符匹配!!!
    let notificationName = Notification.Name.init(rawValue: "getmessage")
    NotificationCenter.default.addObserver(self, selector: #selector(getNotification), 
    name: notificationName, object: nil)
    

    5.自定义的方法中执行具体的操作

    func getNotification(){
      //写执行
    }
    

    相关文章

      网友评论

        本文标题:04|“通知”与“观察者模式”

        本文链接:https://www.haomeiwen.com/subject/nwrkcxtx.html