我试图弄清楚为什么我的应用程序中的 addObserver 调用在应该调用其选择器时导致 EXC_BAD_ACCESS 。让我再解释一下,我在调用 MFMessageComposeView 的方法中调用 addObserver,然后在第 3 方库 ShareKit 中为“didFinish”通知添加观察者。现在,只要调用 addObserver 的选择器,就会引发 EXC_BAD_ACCESS。如果这有什么不同的话,我的 addObserver 也在一个 NSObject 类中。
这是我用于 addObserver 的代码:
NSString *moredetailedshareText = [NSString stringWithFormat:@"Hey"];
[SHKTextMessage shareText:moredetailedshareText];
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(SHKSharerFinished:) name:@"SHKFinishedCall" object:nil];
这是 ShareKit 中的 postNotification 调用:
- (void)sharerFinishedSending:(SHKSharer *)sharer
{
NSLog(@"finishedsending");
[[NSNotificationCenter defaultCenter] postNotificationName:@"SHKFinishedCall" object:sharer];
if (!sharer.quiet)
[[SHKActivityIndicator currentIndicator] displayCompleted:SHKLocalizedString(@"Saved!")];
}
这不起作用的原因是什么?
谢谢!