私は少しキャンバスのものに挑戦し始め、それにいくつかの統計PNGファイルを追加することができました。
今、私はAnimationDrawable(ビットマップではなく)であると信じているPNGシーケンスをロードしたいと思います
アニメーション用の XML ファイルを作成しましたが、途方に暮れています。
Canvas オブジェクトに PNG シーケンスを追加する例は見つかりません。
私は少しキャンバスのものに挑戦し始め、それにいくつかの統計PNGファイルを追加することができました。
今、私はAnimationDrawable(ビットマップではなく)であると信じているPNGシーケンスをロードしたいと思います
アニメーション用の XML ファイルを作成しましたが、途方に暮れています。
Canvas オブジェクトに PNG シーケンスを追加する例は見つかりません。
最初のフレームを描画し、 a を使用しHandler
て遅延をポストMessage
し、処理時に次のフレームに移動して を呼び出しますinvalidate()
。
あなたがする必要があるのは:
ステップ1。オーバーライドVisualizerView.verifyDrawable(Drawable who)
@Override
protected boolean verifyDrawable(Drawable who) {
return true;
}
ステップ2。変更MainActivity.addAnimationRenderer()
private void addAnimationRenderer() {
final AnimationDrawable anim = (AnimationDrawable) getResources().getDrawable(R.drawable.png1);
AnimationRenderer animRenderer = new AnimationRenderer(anim);
mVisualizerView.addRenderer(animRenderer);
anim.setCallback(mVisualizerView);
mVisualizerView.post(new Runnable() {
@Override
public void run() {
anim.start();
}
});
}
ステップ#3。修正AnimationRenderer
:削除
mBitmap.setCallback(null);
mBitmap.start();