我有一个简单的设置。
我有一个“TripService”和一个“TripViewController”。当旅行服务发生变化时,例如距离,它应该触发通知,以便通知任何感兴趣的人,在这种情况下是视图控制器。
当我触发绑定到对象的通知时会发生问题,所以我输入:
[NSNotification notificationWithName:TRIPSERVICEDISTANCECHANGE
object:self
userInfo:distanceInfo];
并用
[notificationCenter addObserver:self
selector:@selector(distanceChanged:)
name:TRIPSERVICEDISTANCECHANGE
object:self.tripRecorder];
在这种情况下,我触发了它,但没有任何 distanceChanged 永远不会被触发。
如果我用 nil 替换两个“对象”值,那么这有效。
奇怪的是,如果我在调试模式下运行应用程序并单步执行代码,这可以正常工作。