電子ガジェットいろいろ

電子系のガジェットやアプリ開発等の話題を書いてます

iPhoneSDKでインジケータ(待ち等に表示する回転画像)を簡単に表示する方法

iPhoneSDKでインジケータ(下の様なアニメーションしている画像)の表示方法です。

デフォルトの画像で良いなら、数行で使うことができます。
ファイルの読み込みや通信中等のユーザが待ち状態になる処理には、表示するようにした方が良いでしょう。

インジケータはUIActivityIndicatorViewクラスで表示できます。
これはビュークラスですので、InterfaceBuilderで表示できるようにするか、addSubviewを使って使うことができます。
デフォルトでは、hidesWhenStoppedプロパティがYESなので、アニメーションをスタートさせることにより自動的に表示し、アニメーションをストップさせることにより自動的に非表示になります。
表示させる画像は変更することができますが、変更方法は今回は説明しないので、ドキュメントを参照してください。

使い方

ビュー画面でaddSubviewを使って表示する使用例です。

・使うための定義

画面の中心(160,240)に表示することを想定して記述してますので、他の場所へ表示したい場合は、座標を変えてください。

UIActivityIndicatorView *indicator;
indicator = [[UIActivityIndicatorView alloc] initWithFrame:CGRectMake(0.0f, 0.0f, 32.0f, 32.0f)];
[indicator setCenter:CGPointMake(160.0f, 240.0f)];
[self addSubview: indicator];
・表示のオン/オフ

startAnimatingメソッドを実行することにより、自動的に表示します。
stopAnimatingメソッドを実行すると、自動的に非表示になります。

// 表示
[indicator startAnimating];
// 非表示
[indicator stopAnimating];
・表最後にメモリ解放

dealloc等で必ずメモリを解放するようにしましょう。

[indicator release];

基礎からのiPhone SDK

基礎からのiPhone SDK

iPhone デベロッパーズ クックブック

iPhone デベロッパーズ クックブック