SurfaceView
に描画するプロセス、つまりAndroidで使用されるSurface
/Canvas
/Bitmap
システム全体を理解するのは苦労しています。キャンバスとサーフェスのコンセプトを理解する
私はandroid-developersサイト、LynarLanderソースコード、this questionのいくつかのチュートリアルで見つけられたすべての記事とAPIドキュメントページを読んでいます。
これらのうち、どちらが当てはまりませんか、その理由は何かを教えてください。
Canvas
には、それ自体がBitmap
と関連付けられています。Surface
には独自のCanvas
が添付されています。- すべて
View
のウィンドウは同じSurface
を共有し、同じCanvas
を共有します。 SurfaceView
は、それ自体、他のView
のサブクラスとは異なりとView
に描画するSurface
独自のを持って、View
のサブクラスで、ある
は、1つの追加の質問があります:。
- はなぜですビットマップによる高レベルの操作のためにすでに
Canvas
がある場合は、Surface
クラスが必要です。Canvas
がSurface
ができる仕事をするのに適していない状況の例を挙げてください。
グラフィックアーキテクチャdoc:https://source.android.com/devices/graphics/architecture.html – fadden