release しても nil しとけ?

Posted 2010年6月28日 | Auther dada | Category PC・デジタル | Tag タグ: ,
Twitterにツイートする Facebookでシェアする はてなブックマーク

iPhoneプログラミングメモ。

処理進行中を表すために用いられるくるくる回るアニメーション
UIActivityIndicatorView が用いられますが、解放関係でハマったのでメモ。

[indicator stopAnimating];
[indicator removeFromSuperview];
[indicator release];

アニメーションをストップして、ビューから外して、解放しています。
が、このコードだと

-[UIActivityIndicatorView stopAnimating]: message sent to deallocated instance

なんてエラーになってしまいました。
releaseの後にさらに nilを代入したら問題なく動作するようになりました。

[indicator stopAnimating];
[indicator removeFromSuperview];
[indicator release];
indicator = nil;

おそらく他の部分で UIActivityIndicatorViewインスタンスの有無を
チェックして処理をわけている箇所があるので、そのへんが関係あるのかも。
ないのかも。

if( indidator ){
 〜くるくるアニメがある時の処理〜
}

あとはこのへんが多少なりとも関係しているんでしょうか?

関連する記事

No Comments »

No comments yet.

Leave a comment

カテゴリー