【问题标题】:How to send and receive data along with the event in Objective-C?如何在 Objective-C 中随事件发送和接收数据?
【发布时间】:2010-02-08 04:47:05
【问题描述】:

我创建了一个程序来通过 NSNotification 发送和接收事件。现在我需要与事件一起发送数据。谁能建议我在 Objective-C 编码中如何做到这一点?

【问题讨论】:

    标签: objective-c nsnotifications


    【解决方案1】:

    有两种方法-一种,您可以通过通知传递任何一个对象-看看

    + (id)notificationWithName:(NSString *)aName object:(id)anObject
    

    第二件事是,您还可以传递一个可选字典,其中包含任意数量的对象,您只需要让双方就用于存储和检索对象的键达成一致。那个电话是:

    + (id)notificationWithName:(NSString *)aName object:(id)anObject userInfo:(NSDictionary *)userInfo
    

    您始终可以在任一调用中为 anObject 或 userInfo 传递 nil。

    直接发送通知的示例调用(如果您不想,则不必先构造通知):

    [[NSNotifcationCenter defaultCenter] postNotificationName:@"MyNotification" object:myObjectToSend];
    

    还有一个添加了 userInfo 的调用的变体,就像通知构造一样。

    【讨论】:

    • 感谢您的回复。您能否给出一个示例程序,用您指定的第一种方法来完成。
    • 如果您无法从所提供的信息中弄清楚,您很可能会在之后立即遇到问题。这不是最直接的东西,但这也不是火箭科学。先去阅读 NSNotificationCenter 文档。
    • 如果您已经在使用通知,您不是在使用 notificationWithName:object: 原样吗?这是发送通知的最简单方法...无论如何我都会添加一个示例。
    • 感谢您的回答..请添加示例
    • 它在上面,“postNotificationName:object:”调用。我概述的第一种方法是,如果您想在发送之前手动构建通知,但实际上没有必要这样做,我总是使用最后一种调用形式。
    猜你喜欢
    • 2010-12-22
    • 2014-02-08
    • 2011-01-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-01-04
    相关资源
    最近更新 更多