通过 RxSwift 优雅使用 NotificationCenter
2024-09-01 23:58:37
纯粹的官方代码使用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])
最新文章
- 最近面试的题目(WEB、Service、SQL、JavaScript)
- 改造一下C# Substring()函数
- 游戏引擎/GUI的设计与实现-常见GUI架构
- 重新想象 Windows 8 Store Apps (14) - 控件 UI: RenderTransform, Projection, Clip, UseLayoutRounding
- LeetCode OJ 34. Search for a Range
- 毕向东tcp学习笔记1
- 如何使用GitHub
- oracle改造常见问题
- Git 常用命令整理(转)
- sqlserver2017 SSAS配置远程访问不成功的问题
- VMare Workstation 安装Ubuntu 虚拟机教程
- Gluon Datasets and DataLoader
- postman客户端的安装与使用
- C++学习(十一)(C语言部分)之 练习
- 如何把高版本的sqlserver 还原到低版本的 sqlserver(转载)
- SpringBoot 中使用 @Value 为 static 变量赋值
- 2018.09.27 codeforces1045A. Last chance(线段树优化建图+最大流)
- JDBC使用DBUtils
- ThinkPhp 生成静态页面
- Sqlite 数据库分页查询(ListView分页显示数据)