0

突然之间,我必须更改我的应用程序中的某些内容,导致它随机崩溃。在 viewWillAppear 之后,我得到一个 EXC_BAD_ACCESS。我已经在我的视图加载方法中注释了所有内容,以初始化一个简单的视图。有时它运行良好而其他运行不正常,我附上了两个不同的控制台日志。

-(void) loadView {
        UIView *uv = [[UIView alloc] initWithFrame:CGRectZero];
        [self setView:uv];
        [uv release];
        NSLog(@"[BookScrollVC.m] loadView >>>");
}

当它崩溃时

2012-10-07 09:07:51.780 DILPStatic[2340:207] [BookScrollVC.m] loadView >>>
2012-10-07 09:07:51.781 DILPStatic[2340:207] [BookScrollVC.m] viewDidLoad
2012-10-07 09:07:51.782 DILPStatic[2340:207] [viewDidLoad] exiting...
2012-10-07 09:07:51.783 DILPStatic[2340:207] [viewWillAppear]
Current language:  auto; currently objective-c
Program received signal:  “EXC_BAD_ACCESS”.

当它起作用时

2012-10-07 09:12:54.702 DILPStatic[2385:207] [BookScrollVC.m] loadView >>>
2012-10-07 09:12:54.703 DILPStatic[2385:207] [BookScrollVC.m] viewDidLoad
2012-10-07 09:12:54.704 DILPStatic[2385:207] [viewDidLoad] exiting...
2012-10-07 09:12:54.705 DILPStatic[2385:207] [viewWillAppear]
2012-10-07 09:12:54.706 DILPStatic[2385:207] *** __NSAutoreleaseFreedObject(): release of previously deallocated object (0x4b59fc0) ignored
2012-10-07 09:12:55.058 DILPStatic[2385:207] [viewDidAppear]

它由 pushviewcontroller 加载。

BookScrollVC *bookScrollVC = [[BookScrollVC alloc] initWithBook:bookPath];


[self.navigationController setToolbarHidden:YES];
[self.navigationController setNavigationBarHidden:YES];
[self.navigationController pushViewController:bookScrollVC animated:YES];

[bookScrollVC release]; 
4

1 回答 1

1

我确实通过清理在其他类中未正确使用的变量来解决问题。这包括丢失 [... release] 和错误地释放 ivars。

希望它提醒某人实际检查这些东西,尽管它可能不再是 ARC 的问题。

于 2012-10-12T06:16:27.393 回答