发送与发件人和对象的通知

时间:2011-05-08 21:02:10

标签: objective-c object notifications sender

我似乎无法找到如何使用对象和发件人发布通知。

我可以发布包含姓名,发件人和用户信息的通知。参见:

- (void)postNotificationName:(NSString *)notificationName
                      object:(id)notificationSender
                    userInfo:(NSDictionary *)userInfo

我可以使用对象发布NSNotification,但不能将发件人链接到它:

NSNotification *notification = [NSNotification notificationWithName:name
                                                             object:someObject];
[[NSNotificationCenter defaultCenter] postNotification:notification];

有人可以告诉我如何使用(a)对象和(b)发件人参考发布通知吗?

1 个答案:

答案 0 :(得分:16)

在您提出的两种方法中,object变量代表通知的发件人,可以是您真正想要的任何内容。要通过通知提供其他对象,您可以将包含对象的字典传递给userInfo

NSDictionary *options = [NSDictionary dictionaryWithObjectsAndKeys:
                                      someObject, @"someObject",
                                      anotherObject, @"anotherObject", nil];
[[NSNotificationCenter defaultCenter] postNotificationName:name
                                                    object:sender
                                                  userInfo:options];