这不是一个沉思思考的问题-为什么NSNotificationCenter在发布时会引发异常?我仍然对iPhone开发还不陌生,因此还不了解Cocoa的内幕,因此最好了解为什么。
我正在将defaultCenter分配给一个变量,调用addObserver:selector:name:object然后释放先前的变量,但是对[notify release]的调用使应用程序崩溃。我没有在代码中做任何奇怪的事情,因此弄清楚为什么这样做很有趣。
有人遇到这个问题吗?
最佳答案
据我对NSNotifcation的了解,您不应该将defaultcenter分配给变量,而应该执行以下操作:
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(showLogin) name:@"IncorrectLogin" object:nil];
在该代码段中,您将调用默认中心并为特定消息注册当前对象。
然后将消息发布到通知中心,您可以使用:
[[NSNotificationCenter defaultCenter] postNotificationName:@"IncorrectLogin" object:nil];
我在所有代码中都使用了上面的代码,并且没有任何问题。