ios - 我们在哪里声明通知中心对象
问题描述
如果有人能正确地向我解释通知中心,它的声明和使用,那将是很好的 swift
let nc = NotificationCenter.default
nc.post(name: Notification.Name("UserLoggedIn"), object:nil)
我们在哪里声明这个?
解决方案
假设你有 2ViewController
- 饲料列表控制器
- 创建饲料控制器
现在的情况是,当您创建新的费用帖子时,CreateFeedController
新创建的提要在FeedListController
. 为此,您可以使用NotificationCenter
.
您也可以根据您的招聘情况使用它。
因此,您需要addObserver
在Viewcontroller
发生某些事情时执行一些操作,以便您可以在FeedListController
.
NotificationCenter.default.addObserver(self, selector: #selector(refreshFeedList), name: NSNotification.Name(rawValue: "refreshFeedList"), object: nil)
FeedListController
从 API 获取新数据的方法
@objc func refreshFeedList() {
// Call Your APO to get New Data
}
CreateFeedController
创建新 Feed后,您需要像下面那样发布。
NotificationCenter.default.post(name: NSNotification.Name("refreshFeedList"), object: nil)
一旦发生火灾,它将调用FeedListController
refreshFeedList
并自动加载新数据。
推荐阅读
- mongodb - 修改MongoDB中对象内的数组元素
- python - 为什么 Pycharm 显示“ModuleNotFoundError: No module named 'kivy._metrics'”?
- javascript - Sequelize接收空数组,同时在顶层进行关联过滤
- android - 在设置颤振环境期间不接受 Android 许可证
- powershell - 为什么我会在 netstat 中得到这个本地地址结果?
- php - 如何使用两个不同的表过滤 laravel ajax 表
- python - 神经网络 ValueError:形状 (2115,13) 和 (1,) 未对齐:13 (dim 1) != 1 (dim 0)
- tensorflow - Model.fit_generator 已弃用,将在未来版本中删除
- python - 如何将声明的变量存储在数组中
- embedded-linux - yocto 在编译时禁用 systemd 服务的自动启动