在ARC项目中,我addObserver
在viewDidLoad:
和removeObserver:
中dealloc
发出通知。但是在我弹出viewController后,dealloc
没有被执行。
- (void)viewDidLoad
{
[super viewDidLoad];
[[NSNotificationCenter defaultCenter] addObserver:self
selector:@selector(refreshData)
name:MyNotification
object:nil];
}
- (void)dealloc
{
NSLog(@"==================");//There is nothing print out.
[[NSNotificationCenter defaultCenter] removeObserver:self
name:MyNotification
object:nil];
}
感谢。
答案 0 :(得分:5)
这可能是你启用了nszobie对象,禁用它们。我不知道为什么但如果在arc中启用nszombie,则不会调用dealloc。
转到产品>编辑方案>取消勾选启用僵尸