我需要一个关于向多个观察者发布通知的详细教程。 这是我的代码
-(void)viewDidLoad
{
NSString *notificationName = @"MT";
[[NSNotificationCenter defaultCenter] addObserver:self
selector:@selector(useNotificationWithString:)
name:notificationName
object:nil];
}
这是我想要向其他类的对象发布通知的当前对象。
答案 0 :(得分:2)
您不会向多个对象发布通知。相反,您有多个对象监视通知,然后当您希望它们全部接收该通知时,您将其发布到通知中心。通知中心负责通知观察对象。
答案 1 :(得分:1)
为要接收通知的每个对象添加相同的观察者。然后在某处发布通知,所有观察者都会收到通知。不要忘记在每个对象的[[NSNotificationCenter defaultCenter]removeObserver:self]
或-(void)dealloc
方法中拨打-(void)viewDidUnload
。
答案 2 :(得分:1)
您永远不会向多个观察者发布通知,事实观察员会观察您的通知。
您使用通知名称发布一次通知。
在所有类中添加 OBSERVER,以便发布已发布的通知。
您要观察的每个班级都有以下内容:
[[NSNotificationCenter defaultCenter] addObserver:self
selector:@selector(useNotificationWithString:)
name:notificationName
object:nil];
您可以在Apple文档中获取full notes here。
答案 3 :(得分:0)
您应该在每个希望接收通知的班级的每个班级中添加这些代码。
并使用下一代码为所有对象发布通知:
[[NSNotificationCenter defaultCenter] postNotificationName:@"MT" object:self]