0

スレッドからを更新しようとするとUIActivityIndicatorView、例外がスローされてアプリがクラッシュします

ファイナライズ中のレイヤーの変更-0x7e177fd0-[CALayerremoveAnimationForKey:]:割り当て解除されたインスタンス0x7e177fd0に送信されたメッセージ

mallocDebuggerツールからのメモリリークを追跡しようとすると、このクラッシュは常に発生しているわけではなく、10回に1回発生しています。

このメモリの問題から私を助けてください

スレッドの実装:

NSAutoreleasePool *pool = [[NSAutoreleasePool alloc]init];

[autoRechargeCell addSubview:activityIndicator];
[self.activityIndicator startAnimating];
if( [PennyTalkAPI getBalanceInfoForAccount:appDelegate.accountNumber withPIN:appDelegate.pinNumber])
{   
    [autoRechargeCell.switchField setOn:[[NSUserDefaults standardUserDefaults] boolForKey:@"AutoRecharge"]];
    [self.activityIndicator stopAnimating];   <<<<<<<<<<<<<<<<<<<<<< 
}
else
{
    [self.activityIndicator stopAnimating];
}

[pool release]; 

これは私が書いたコードです。

4

2 に答える 2

0

セカンダリスレッドから更新しているため、クラッシュしている理由はメインスレッドでこれを呼び出します

   [self.activityIndicator performSelectorOnMainThread:@selector(stopAnimating) withObject:nil waitUntilDone:NO];  

私はそれがあなたを助けるかもしれないと思う....

于 2012-04-15T09:02:44.917 に答える