質問

私はいくつかの経験があります SurfaceView. 。不必要な再描画を防ぐために、私は常にカウントダウン変数を使用して、ビューを描画する頻度をスレッドに伝えます。

countdown > 0 : draw ? doNothing

しかし、私はそれを変更して「プッシュ面」を使用することを考えていました。したがって、バッファーを表面に押して、プロジェクトのどこにでもカウントダウン変数を設定する代わりに表示するだけです。

私の問題は、使用法が記述されている良いチュートリアル/リソースが見つからないことです。現在、私はこのようなものを持っています:

// panel is the SurfaceView
c = panel.getHolder().lockCanvas(null);
synchronized (panel.getHolder()) {
    panel.updatePhysics();
    panel.onDraw(c);
}
panel.getHolder().unlockCanvasAndPost(c);

使用できないときにキャンバスを引き出す方法についてはわかりません lockCanvas() ドキュメントで述べたように。

役に立ちましたか?

解決

この質問は、表面タイプを非推奨にした後、時代遅れです。だからそれはもう使用されていません...

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top