iPhoneアプリ作りのローディングまわりを使う機会があったので、まとめてみます。

IBを使ってないので、コードで完結する書き方です。


・UIActivityIndicatorView

$iPhoneでゲームとか作ってます

↑ローディングのときに出すくるくるです。
使い方はカンタン。

オブジェクト生成

UIActivityIndicatorView* ind = [[UIActivityIndicatorView alloc] initWithActivityIndicatorStyle:UIActivityIndicatorViewStyleWhite];


スタイルは

UIActivityIndicatorViewStyleWhiteLarge (白大)
UIActivityIndicatorViewStyleWhite(白小)
UIActivityIndicatorViewStyleGray(灰色小)

大きさはframeで自由に変えられるけど、白大を使わないと画像が粗くなるので白大を使うのが無難な気がする。
白地のときだけ灰色を使うという使い分けをする感じになるのかな?

UIViewのサブクラスなので、addSubviewして普通のコンポーネントとして配置。

あとは


[ind startAnimating]; // くるくる開始



[ind stopAnimating]; // くるくる終了



でくるくるを開始したり終了したりできます。
なにか始める前にくるくる開始しておいて、終わったらくるくる終了する感じの使い方ですね。



・UIProgressView

$iPhoneでゲームとか作ってます

↑進捗バーです。
これもカンタン。

オブジェクト生成

UIProgressView* prg = [[UIProgressView alloc] initWithProgressViewStyle:UIProgressViewStyleDefault];


スタイルは

UIProgressViewStyleDefault (白地に青のバーが伸びる:上の画像のスタイル)
UIProgressViewStyleBar (青地に白のバーが伸びる:下の画像のスタイル)

$iPhoneでゲームとか作ってます

進捗の設定は0(進捗0)~1(進捗MAX)の間の数値をいれてコントロール


prg.progress = 0.5f; // 半分終了



これだけです。
表示するしないは、普通のUIViewと同じでhidden=TRUE/FALSEでできます。