我的iOS应用程序中有对象列表,它使用NSNotificationCenter
观察一些更改。
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(onSomeChanges)
name:@"SomeConstantNotificatioName" object:nil];
因此,当发布通知时,NSNotificationCenter
以与调用addObserver
方法相同的顺序调用onSomeChanges
方法。
问题是有没有办法改变这个订单?
我需要的是能够调用一些添加的观察者方法,它将插入所需的观察者作为观察者列表的第一个元素。因此,无论以什么顺序添加观察者,某些对象都将首先收到通知。
谢谢
发布于 2013-12-18 01:12:31
您不能更改观察者的顺序,即使您按您想要的顺序添加它们,也没有通知中心按正确顺序调用它们的保证。我建议您添加一个需要首先调用的观察者,然后为其他人发布另一个通知。这以后将很难调试,但在本例中您将确定顺序。
https://stackoverflow.com/questions/20653716
复制相似问题