Viewの描画(Android群英伝)

1880 ワード

内容はブロガーが本に従って叩いたもので、ブロガーのコードワードは大変です.転載は出典を明記してください.後序の内容は続々とコードされます.
この文章はViewの測量の後であるべきで、発表を忘れて、233333は1つのViewを測量した後に、私達は簡単にonDraw()方法を書き換えることができて、そしてCanvasオブジェクトの上で必要な図形を描きます.まず,システム2 DグラフィックスAPIを利用するために道徳Canvasオブジェクトを使用する必要があることを理解する.Androidのインタフェースに対応する画像を描画するには、Canvasで描画する必要があります.Canvasはまるで画板のようで、Paintを使って上に絵を描くことができます.通常、図面は、Viewを継承して書き換えるonDraw()メソッドで作成する必要があります.では、Canvasとは何ですか.一般に、ViewクラスのonDraw()を書き換える方法を使用して図面を描くことができます.onDraw()にはCanvas canvasオブジェクトというパラメータがあります.このCanvasオブジェクトを使用すると図面を描くことができますが、他の場所では、通常、次のようにコードを使用してCanvasオブジェクトを作成する必要があります.
Canvas canvas = new Canvas(bitmap);

Canvasオブジェクトを作成すると、なぜbitmapオブジェクトに転送されますか?bitmapオブジェクトに転送されなければ、IDEコンパイルはエラーを報告しませんが、一般的にはそうしません.これは、転送されたbitmapが、このbitmapを介して作成されたCanvasキャンバスと密接に関連しているためであり、このプロセスをマウントキャンバスと呼ぶ.このbitmapは、Canvasに描画されたすべての画素情報を格納するために使用される.こうしてCanvasオブジェクトを作成すると、後ですべてのCanvasが呼び出されます.drawXXXメソッドはこのbitmapで発生します.ViewクラスのonQraw()メソッドでは、次のコードでcanvasとbitmapの直接的な関係がわかります.まずonDrawメソッドで2つのbitmapを描画し、コードは以下のようにします.
canvas.drawBiimap(bitmap1, 0, 0, null);
canvas.drawBitmap(bitmap2, 0, 0, null);

bitmap 2の場合、コードは次のように別のCanvasオブジェクトにロードされます.
Canvas mCanvas=new Canvas(bitmap2);

他の場所でCanvasオブジェクトの描画方法を使用してbitmap 2をロードしたCanvasオブジェクトに描画を行います.コードは以下の通りです.
mCanvas.drawXXX

mCanvasによって描画効果がbitmap 2に作用し、さらにViewをリフレッシュすると、onDraw()メソッドによって描画されたbitmap 2が変化していることがわかります.これは、bitmap 2がmCanvasで行った描画操作を搭載しているためです.CanvasのペイントAPIも使用していますが、onDraw()メソッドで指定したキャンバスにグラフィックを直接描画するのではなく、bitmapを変更してViewに再描画させることで、変更後のbitmapを表示します.この過程は初心者にとって非常に理解しにくいかもしれませんが、非常に重要で、これは後続の図面の技術を深く勉強し、向上させるのに役立ちます.Canvasオブジェクトを理解したら、Canvasが提供する描画方法を呼び出して、自分の望む図形を描くことができます.どんなに複雑で美しいコントロールであっても、小さなグラフィックユニットに分割することができます.私たちがしなければならないのは、これらの小さな描画ユニットを見つけて描くことです.
原文アドレスViewの描画(Android群英伝)私のメディアブログblankj小駅から、いらっしゃいませ.