Objective c iOS/目标C中的UINotification问题

Objective c iOS/目标C中的UINotification问题,objective-c,ios,nsnotifications,Objective C,Ios,Nsnotifications,我正在用不同的导航控制器制作一个应用程序。它们都是初始初始化的 比如说,我有3个导航控制器A、B和C 来自B(比如B1)的视图控制器发送一个通知,该通知应该从A(比如A1)中的视图控制器听到。之后,我们转到查看控制器A1 但是,如果我们从一开始就在视图控制器B1中(并且从未访问视图控制器A1),则A1不会收到通知。然而,它第二次得到了它 或者,如果我进入A1一次,通知就会被正确接收 有人能帮我吗?谢谢 注意:侦听器代码位于A1的init中。它被命中(我使用断点进行了检查)。因为您说通知是在视图显

我正在用不同的导航控制器制作一个应用程序。它们都是初始初始化的

比如说,我有3个导航控制器A、B和C

来自B(比如B1)的视图控制器发送一个通知,该通知应该从A(比如A1)中的视图控制器听到。之后,我们转到查看控制器A1

但是,如果我们从一开始就在视图控制器B1中(并且从未访问视图控制器A1),则A1不会收到通知。然而,它第二次得到了它

或者,如果我进入A1一次,通知就会被正确接收

有人能帮我吗?谢谢


注意:侦听器代码位于A1的init中。它被命中(我使用断点进行了检查)。

因为您说通知是在视图显示一次之后收到的,所以我怀疑您正在使用一种方法注册通知,该方法在视图显示之前不会运行(
viewDidLoad
viewdidappease:
,等等)


如果是这种情况,请尝试将通知注册移动到ViewController中使用的
init
方法。

NSNotification可通过所有应用程序查看。所以,为了实现您的计划,我将使用布尔标志或计数器。您可以将这些指示符放在appDelegate类中或使用全局变量。

您可以重新表述您的问题吗,B1是发布通知还是侦听通知还不是很清楚。@0x8badf00d:B1发布通知。A1侦听这些通知。我正在
init
方法中执行此操作(嗯,那我就不知所措了。我会继续思考,如果我有什么想法,我会让你知道。如果你有更多的上下文或代码要发布,那可能会有所帮助。