在我的应用中,我在模式之间切换视图。我的问题是,当我从第一个viewController移动到第二个时,它可以工作。当我第一次关闭第二个视图时,这也有效。你说的问题在哪里?它来了。当我第一次从第一个viewController移动到第二个viewController时,它再次起作用。就像它应该的那样。然而,当我试图在第二次关闭第二个viewController时,我得到了一个EXC_BAD_ACCESS错误
[self dismissModalViewControllerAnimated:YES];
线。
为什么第二次崩溃,但从来没有第一次崩溃?
编辑一:
无论我切换到哪个viewController,都会发生此错误:
如果我从A移动到B,然后返回A,然后再移动到B,然后尝试返回A:崩溃 如果我从A移动到C,然后回到A,然后回到C,然后尝试回到A:再次崩溃
编辑二:
我使用以下代码创建/显示视图控制器:
MapView *controller = [[MapView alloc] initWithNibName:@"MapView" bundle:nil];
controller.modalTransitionStyle = UIModalTransitionStyleCrossDissolve;
[self presentModalViewController:controller animated:YES];
我应该在创建后释放这个对象吗?
问题解决了。在我使用模态视图之前,我曾使用过的代码行被用于转换,我忘了删除它。取胜。
答案 0 :(得分:2)
通常,EXC_BAD_ACCESS
错误意味着您正在尝试引用已释放的对象,即您过度释放某些内容。查看内存管理,可以运行Build / Build and Analyze工具。
是的,你应该在以模态方式呈现viewcontroller之后调用[controller release];
。