0

我正在从一个圆形矩形按钮显示一个名为“规则”的模式视图。在那个“规则”模式视图中,当用户单击“创建规则”按钮时,我正在显示另一个名为“newRule”的模式视图。当我退出“newRule”模式视图时,应用程序崩溃。这是我为退出“newRule”模式视图而编写的代码。

     [self dismissModalViewControllerAnimated:YES];

控制台中不显示任何内容。当我尝试调试代码时,它在 dealloc 方法之后显示了 EXC_BAD_ACCESS。我的 dealloc 方法如下所示:

    [label release];
    label = nil;

    [imageArray release];
    imageArray = nil;

    [languageElementsArray release];
    languageElementsArray = nil;
    [super dealloc];

请帮我。

4

3 回答 3

1

标签是 UILabel 对象吗?数组中还有什么?一旦他们的superview被释放,视图就会自动释放,因此在它的superview被释放后释放一个子视图(或释放子视图然后是superview)将导致类似于你描述的崩溃

于 2011-11-20T04:54:40.500 回答
0

我正在经历类似的事情。当我注释掉最后一行 ( [super dealloc]) 时,它就会起作用。这对你有影响吗?

于 2011-10-28T19:50:20.793 回答
0

如果你碰巧在 Xcode 4.2 中使用了自动引用计数,那么你根本不应该有一个 [super dealloc]——这会导致这个错误。

当然,在这种情况下,您可能也不应该释放这些其他对象。

于 2011-11-20T04:19:09.570 回答