酢ろぐ!

カレーが嫌いなスマートフォンアプリプログラマのブログ。

ステータスバー上のNetworkActivityIndicatorを表示/非表示させる

本記事は「ステータスバーのネットワーク接続中のインジケーターを表示/非表示する」に転記しました。


ネットワーク通信中を表すステータスバーのぐるぐるは、NetworkActivityIndicatorと呼ばれています。かなり今更なのですが、このインジゲータを表示/非表示させる方法をご紹介します。

UIApplicationオブジェクトが持っているNetworkActivityIndicatorVisibleプロパティにBOOL値を入れるだけです。

ネットワークアクティビティインジゲータを表示する場合

UIApplication* application = [UIApplication sharedApplication];
[application setNetworkActivityIndicatorVisible:YES];

ネットワークアクティビティインジゲータを非表示にする場合

UIApplication* application = [UIApplication sharedApplication];
[application setNetworkActivityIndicatorVisible:NO];

蛇足

余談ですが、見てお分かりの通り「表示」「非表示」の2つの状態しか持っていません。

表示命令→表示命令→非表示命令ときた場合には、実際通信中の処理が生きていてもインジゲータは消えてしまいます。アプリ内で統括して表示命令と非表示命令の数を管理しておく必要があるかもしれませんね。