通過 RxSwift 優雅使用 NotificationCenter


原文

純粹的官方代碼使用NotificationCenter真的很難用,但是有了RxSwift,就變得方便了很多。

修改 Podfile,通過pod引入RxSwift
  pod 'RxSwift'
  pod 'RxCocoa'
通過 RxSwift 注冊監聽器
import RxSwift
import RxCocoa

let notificationName = Notification.Name("UploadStatus")
NotificationCenter.default.rx.notification(notificationName).subscribe(onNext: { notification in
    if(notification.object != nil){
        print("上傳狀態:\(notification.object!)")
    }
    if(notification.userInfo != nil){
        print("參數:\(notification.userInfo!)")
    }
})
發送通知
let notificationName = Notification.Name("UploadStatus")
NotificationCenter.default.post(name: notificationName, object: "上傳失敗")

NotificationCenter.default.post(name: notificationName, object: nil, userInfo: ["param1":"Wiki","param2":18])


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM