0

突然、アプリをランダムにクラッシュさせる何かを変更したに違いありません。viewWillAppear の後、EXC_BAD_ACCESS を取得します。単純なビューを初期化するために、ビューの読み込みメソッドですべてをコメントアウトしました。正常に動作する場合とそうでない場合があります。2 つの異なるコンソール ログを添付します。

-(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] と、ivar の誤った割り当て解除の両方が含まれていました。

これらのことを実際に確認するように誰かに思い出させてくれることを願っていますが、おそらくARCの問題ではありません.

于 2012-10-12T06:16:27.393 に答える