5

私は同じプログラムを2つの方法で書きました。

1つはSurfaceviewを使用し、もう1つはカスタムビューを使用します。android SDK開発ガイドによると、グラフィックを処理するために別のスレッドを生成できるため、サーフェスビューを使用する方が優れています。SDK開発ガイドでは、invalidate呼び出しでカスタムビューを使用することは、アニメーションが遅く、グラフィックの強度が低い場合にのみ有効であると主張しています。

ただし、私の単純なアプリでは、無効化の呼び出しでカスタムビューを使用すると、レンダリングが速くなるように見えることがはっきりとわかります。

あなたたちはこれについて何を知っている/考えていますか?

私のtouchEventコードはまったく同じであり、描画コードもまったく同じです。唯一の違いは、1つはすべてUIスレッドにあり、もう1つは描画を処理するためにトレッドを使用していることです。

4

1 に答える 1

2

SurfaceViewを使用すると、描画用に2つのバッファーで作業できますが、カスタムビューはどうですか?

別のこと:あなたは、ドキュメントがinvalidate遅いアニメーション/それほど強くないグラフィックスで速く動作すると言っていると言いました。あなたの「シンプルなアプリ」はどれくらい激しいですか?ストレステストを実行し、シングルスレッドがタッチ入力をどのように処理するかを考慮する必要があります。

ゲームには3つのスレッドがあります。1つはゲームロジック用、もう1つは描画用、そして「通常の」UIスレッド...

于 2010-08-20T10:23:04.240 に答える