2011年12月4日日曜日

Network activity indicator + NSURLConnection

iOSの通信中のサインとして、ステータスバーに表示されるあのクルクル回る奴
あれは Network activity indicator と呼ぶのですがあの表示は簡単にできます

    
[UIApplication sharedApplication].networkActivityIndicatorVisible = YES;

もちろん、消すのも簡単にできます。
    
[UIApplication sharedApplication].networkActivityIndicatorVisible = NO;

ネットワーク通信中を表すのによく使うんですが、
NSURLConnectionとかを使っていっぺんに複数の画像をDLしたりすることがありますよね。
そのときにDLを開始したときにインジゲータを表示して、全部のDLが終わったときにインジゲータを消したいと思います。

そういったときの対処法ですが、以下のURLにその答えが載っていました。
http://akira108.com/blog/?p=6

NetworkActivityIndicatorを管理するシングルトンクラスを作ってやって、インジゲータのカウンタを作ってやって管理します。
カウンタが1以上になると表示して、0になると消す。
インジゲータを表示するタイミングで、カウンタをインクリメント
消去するタイミングでカウンタをデクリメントさせるという使い方です!

0 件のコメント:

コメントを投稿