0

我正在尝试创建自己的 NSNotificationCenter 只是为了更好地编程。我遇到了一个我无法完全解决的 EXC_BAD_ACCESS。

我的方法:

- (void)addObserver:(id)observer forKey:(NSString *)theKey withSelector:(SEL)block {
    NSString *selector = NSStringFromSelector(block);
    NSDictionary *dict = [NSDictionary dictionaryWithObjectsAndKeys:observer, @"o",selector, "s", nil];
    [[observers objectForKey:theKey] addObject:dict];
}

我在初始化时遇到错误NSDictionary *dict,我不明白为什么。被添加的观察者是在它运行UIViewController的中调用这个方法的一个,如果这很重要的话。viewDidLoadapplicationDidFinishLaunching

我收到错误 EXC_BAD_ACCESS 代码=1

任何帮助,将不胜感激,。

干杯。

4

1 回答 1

2
NSDictionary *dict = [NSDictionary dictionaryWithObjectsAndKeys:observer, @"o",selector, "s", nil];

看起来你在我的“s”上缺少一个@。

NSDictionary *dict = [NSDictionary dictionaryWithObjectsAndKeys:observer, @"o",selector, @"s", nil];

为了您的方便。

于 2012-08-08T22:11:18.630 回答