Swift 学习之 NotificationCenter

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Swift 学习之 NotificationCenter相关的知识,希望对你有一定的参考价值。

1、发布新通知:

NotificationCenter.default.post(name:  NSNotification.Name(rawValue: "MessageMainCount"), object: nil, userInfo: ["count":"\(count)"])

 2、接受新通知

NotificationCenter.default.addObserver(self, selector: #selector(self.changeBadgeValue(notification:)), name: NSNotification.Name(rawValue: "MessageMainCount"), object: nil)

 3、设置接受通知的监听方法

func changeBadgeValue(notification: Notification) -> Void {
        
        let name = notification.name
        let userInfo = notification.userInfo as! [String:Any]
        let userInfoDic = userInfo as NSDictionary
        
        if name == NSNotification.Name(rawValue: "MessageMainCount"){
 
            let badgeValue: String = userInfoDic.object(forKey: "count") as! String
           
            self.messageVC.parent?.tabBarItem.badgeValue = badgeValue
        }
}

 4、移除通知监听

deinit{
        NotificationCenter.default.removeObserver(self)
}

 

以上是关于Swift 学习之 NotificationCenter的主要内容,如果未能解决你的问题,请参考以下文章

swift 学习之自动引用计数

swift学习之元组

Swift学习之访问控制详解

swift学习之数组

swift简单学习之Struct

Swift学习之装饰者模式详解