・ポニョ・キン肉マンまぁそんなところですよね。この3つに全て共通していることがあります。なんでしょう?それは全て「目の錯覚によって動いて見える」ということです。人間様は、目と脳で常に「光を映像に直してつなげる」処理を行っています。アナタが今何気なく見ている目の前の光景も、極限まで細かく見れば静止画の連続です。小さい頃、教科書の隅にパラパラ漫画って書きましたか?何枚も何枚もちょっとだけズレた絵を描いておいて、パラパラ~っとめくると動いて見える。あれが何故動いて見えるのか。脳が残像を元に勝手に映像をつなげてしまうからです。人間は、1秒間に12パラパラされると、スムーズに動いていると錯覚し始めます。反対に1秒間に70パラパラを超えると、脳の知覚限界に達してそれ以上スムーズに見えなくなります。一般的な映画では1秒間に24パラパラ。「滑らかすぎて気持ち悪い」とまで言われるゲームソフト「グランツーリスモ」では、1秒間に60パラパラという凄まじいスピードで映像を切り替えています。secondと言います。アニメーションは、基本的に隣の席の佐藤君が描いたパラパラ漫画だろうとピクサーが作ったウォーリーだろうと同じ原理で動いているのです。iPhoneのアニメーションだって同じ原理で動いているに違いない。考えた上で、Xcodeを立ち上げましょう。今回も毎度お馴染みの「山田君、あと何日?カウンター」を使います。「あと何日?」ボタンですかね。コレを動かしましょう。*moveButton;まずはアウトレットをビューコントーラーのヘッダーファイル(拡張子.h)に1つ追加して下さい。ボタンをプログラムからどうこうする必要が今までありませんでしたので、アウトレットを定義していませんでした。*)timer;もう1つはメソッドを追加します。一定時間が来たら動く、タイマー起動のメソッドを追加します。※このへんの書き方も別のタイミングでお話ししますので、今回はコピペで。追加したアウトレットと、ビュー上のボタンを接続、と。scheduledTimerWithTimeInterval:1target:selfselector:@selector(move:)userInfo:nilrepeats:YES];こんな感じでタイマーを作成します。書いている内容は「1秒ごとにmoveってメソッドを動かせ」ってことだけです。commitAnimations];}ヘッダーファイルにも追加した、moveというメソッドの中身です。アニメここまで~、それじゃ実行~はい、小難しいコード説明はここまで。要は何をしたいの?というと。・1秒ごとにタイマーを動かして・新しいX,Y座標をランダムで作って・1秒間かけて現在地から新しいX,Y座標までボタンを動かす←ここがアニメ。・動き終わる頃には次のタイマーが作動<以下繰り返し>こんなことをしようしています。ボタンがどんどん逃げて行く。「山田君、あれ、山田君?あと何日か教えて!カウンター」へ進化。