添加观察者时未输入选择器功能

问题描述

在我的第一个视图控制器中,我使用以下代码发布通知

Element: 3
Element: 4
Element: 5
Element: 1
Element: 2

然后我使用以下代码在第二个视图控制器中“接收”通知

NotificationCenter.default.post(name: Notification.Name("date"),object: formattedDate)

但是,永远不会调用函数“ didGetTheDate”。 我已经三遍检查过是否添加了打印语句来检查函数“ receiveNotification”是否被调用

有人可以帮我吗?

解决方法

NSNotificacionCenter是观察者模式的一种变体,您可以阅读关于它的here

这意味着您必须在发布任何通知之前注册观察员。如果您在此之前发布任何内容,则NSNotificationCenter会看着name的观察者,并且会看到没有人在听,因此不会发生任何事情。