2011-01-29 7 views
0

この目的のために、Android Canvasや他の便利なオブジェクトで約30フレーム/秒で何かを描画したいと思います。私のアプリケーションでは、さまざまなグラフィックオブジェクトが描画され、グラフィックオブジェクトのいずれかがタッチされると、グラフィックオブジェクトはその形状を変更します。 Viewサブクラスの onDraw(Canvas canvas)コールバックを見ましたが、invalidate()を呼び出すことはここでは役に立ちません。まずフレームレートを制御できません。Android Canvasでアニメーションを作成する方法は?

答えて

1

私は個人的にAndroidの組み込みのアニメーションクラスを嫌いです。私はCanvasですべてのアニメーションを手作業で行う傾向があります。アニメーションで使用したい画像のリストを作成し、現在の「フレーム」を格納するint変数を作成するのが最も幸運でした。フレームを進めるために、私は例えば30msの間スリープするスレッドを作成し、それに応じてフレーム変数を更新します。次に、使用している更新ハンドラがあれば、switch文などを作成して、それぞれのフレームを描画することができます。

多くの作業のように見えるかもしれませんが、実際はそうではありません。それをすべてクラスに押し込むと、あなたは多くのアニメーションが来るのを愛するでしょう。

関連する問題