【问题标题】:Trying to add a NSMutableDictionary to variable with a block parameter but after addObject always returns null尝试使用块参数将 NSMutableDictionary 添加到变量,但在 addObject 之后总是返回 null
【发布时间】:2014-05-05 15:18:53
【问题描述】:

我正在尝试使用块参数将 NSMutableDictionary 添加到 _ons 变量,但在 addObject 之后总是返回 null。

@property (atomic, strong) NSMutableArray * ons;

--------------------------------------------------------------------

NSMutableDictionary *on = [[NSMutableDictionary alloc] init];
[on setObject:eventName forKey:@"eventName"];
[on setObject:[callback copy] forKey:@"callback"]; // callback it's a block

[_ons addObject:on];
NSLog(@"_ons: %@", _ons); // always prints null!!!

【问题讨论】:

标签: ios objective-c objective-c-blocks


【解决方案1】:

你永远不会实例化_ons。在您的代码中的某处,您需要调用:

self.ons = [[NSMutableArray alloc] init];

(如果您是 Objective-C 的新手,您的代码不会崩溃,因为发送到 nil 的消息是返回 0 的无操作,而不是像其他一些语言那样崩溃。)

【讨论】:

  • 对!哈哈!谢谢!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2020-01-15
  • 1970-01-01
  • 2021-06-03
  • 2011-06-16
  • 1970-01-01
  • 2018-03-05
  • 1970-01-01
相关资源
最近更新 更多