今回は、あんまり時間がない。ちょっとだけUIButtonアニメーションにふれとく。
本当にぃい、すまないとおお~、思って、ぃる~。
この前のグーグル検索で、UIButtonにアニメーションをさせるには、以下のようにUIView beginAnimationsとUIView commitAnimationsで囲む中でUIButtonのアニメーション指定ができる属性への設定をおこなえばいいということがわかった。
[UIView beginAnimations:NULL context:NULL];
・
・
UIButtonの持つアニメーション指定ができる属性の設定
・
・
[UIView commitAnimations];
こんな感じだ。
beginAnimations:の引数の詳細は不明。とりあえずNULLでいいみたい。ほかにも以下のようなメソッドが用意されてて、指定がなければデフォルト値が使われる。おそらく以前調べた「Core Animation プログラミングガイド」からアニメーション実行時間は0.5秒と思われ。
[UIView setAnimationDuration:アニメーション実行時間(秒)];
[UIView setAnimationDelay:アニメーション開始待ち時間(秒)];
アニメーション指定できる属性としてはalphaやtransformがUIViewにあった。UIViewを継承しているUIButtonでも当然使える。hiddenは指定できないみたいですぐに変化してしまった。
transformには変形行列式であるCGAffineTransformを指定する。ここらへん「iPhoneアプリ開発、その(17)」と微妙に違うのは、何故に?って感じだけど、ま、とりあえず考え方は同じでアフィン変換(工学部の大学生はわかるだろうけど、わからない人は、がんばってググってください。)用の行列式を作ればいてことになる。
例のAPI検索使って調査したらスケーリング用の行列式作ってくれるAPIが用意されてました。
CGAffineTransformMakeScale
こいつでボタンの大きさを変えながら、透明度も変えて押す順にボタンがフェードアウトするようにしたのが今回のソース。Chimpanzee-02からいじったのは以下のメソッドだけなんで(たぶん)、ソース比較して、それをヒントに、いろいろアニメーションさせてみてね。
- (void)alertView
- (void)startGame
あと、今回のアニメーションのためには以下のフレームワークが必要です。
CoreGraphics.framework
場所が、iPhone用のSDKの中だって事に注意ね。
------------
サンプルプロジェクト:Chimpanzee-02a.zip
本当にぃい、すまないとおお~、思って、ぃる~。
この前のグーグル検索で、UIButtonにアニメーションをさせるには、以下のようにUIView beginAnimationsとUIView commitAnimationsで囲む中でUIButtonのアニメーション指定ができる属性への設定をおこなえばいいということがわかった。
[UIView beginAnimations:NULL context:NULL];
・
・
UIButtonの持つアニメーション指定ができる属性の設定
・
・
[UIView commitAnimations];
こんな感じだ。
beginAnimations:の引数の詳細は不明。とりあえずNULLでいいみたい。ほかにも以下のようなメソッドが用意されてて、指定がなければデフォルト値が使われる。おそらく以前調べた「Core Animation プログラミングガイド」からアニメーション実行時間は0.5秒と思われ。
[UIView setAnimationDuration:アニメーション実行時間(秒)];
[UIView setAnimationDelay:アニメーション開始待ち時間(秒)];
アニメーション指定できる属性としてはalphaやtransformがUIViewにあった。UIViewを継承しているUIButtonでも当然使える。hiddenは指定できないみたいですぐに変化してしまった。
transformには変形行列式であるCGAffineTransformを指定する。ここらへん「iPhoneアプリ開発、その(17)」と微妙に違うのは、何故に?って感じだけど、ま、とりあえず考え方は同じでアフィン変換(工学部の大学生はわかるだろうけど、わからない人は、がんばってググってください。)用の行列式を作ればいてことになる。
例のAPI検索使って調査したらスケーリング用の行列式作ってくれるAPIが用意されてました。
CGAffineTransformMakeScale
こいつでボタンの大きさを変えながら、透明度も変えて押す順にボタンがフェードアウトするようにしたのが今回のソース。Chimpanzee-02からいじったのは以下のメソッドだけなんで(たぶん)、ソース比較して、それをヒントに、いろいろアニメーションさせてみてね。
- (void)alertView
- (void)startGame
あと、今回のアニメーションのためには以下のフレームワークが必要です。
CoreGraphics.framework
場所が、iPhone用のSDKの中だって事に注意ね。
------------
サンプルプロジェクト:Chimpanzee-02a.zip