我正在尝试以模态方式呈现视图控制器:
- (IBAction)addReference {
ReferenceAddViewController *referenceAddViewController = [[ReferenceAddViewController alloc] initWithNibName:@"ReferenceAddViewController" bundle:nil];
[referenceAddViewController setDelegate:self];
[self presentModalViewController:referenceAddViewController animated:YES];
[referenceAddViewController release];
}
但是,如果我稍后调用 [referenceAddViewController release],当模式视图被关闭时,我的应用程序会崩溃,并显示“[CALayer release]:发送到已释放实例 0x4b90370 的消息”。
在 Instruments 中进行堆栈跟踪和引用计数历史并没有给出任何结论,只有两个历史步骤。
- 0:保留计数 1 - 在我的代码中通过 presentModalViewController 进行 Malloc。
- 1:保留计数 -1 - 除了 main.m 之外,我的代码中没有任何内容
引用计数如何从 1 跳到 -1 非常有趣?Instruments 会记录每个引用计数的变化吗?
我将如何进一步调试此问题?