c.drawColor(Color.BLACK);まず、背景色の設定からです。これは「drawColor」を呼び出して行います。色の値は、Color.BLACKを指定していますね。これは、黒の値を示すクラスフィールドです。Colorクラスには、よく使われる色の値として、あらかじめ以下のようなクラスフィールドが用意されています。
Paint fill_paint = new Paint();「setStyle」が、描画スタイルを設定するものです。ここではPaint.Style.FILLを指定して、図形の内部まで塗りつぶす方式に設定しています。この他、「STROKE(線のみ描画)」「FILL_AND_STROKE(塗りつぶしと線を描画)」が用意されています。
fill_paint.setStyle(Paint.Style.FILL);
fill_paint.setColor(Color.BLUE);
c.drawRect(100f, 100f, 200f, 200f, fill_paint);「drawRect」は、四角形を描くメソッドです。引数には描く図形の左上、右下の横・縦位置と、使用する属性を収めたPaintインスタンスが渡されます。続いて、円の描画です。
fill_paint.setColor(Color.RED);先ほどのPaintインスタンスをまた再利用します。「setColor」で描画に使う色を赤に変更し、それから「drawOval」で円を描きます。このdrawOvalは、RectFクラスで描く領域を指定し、これとPaintメソッドを引数に渡して呼び出します。
c.drawOval(new RectF(0f, 0f, 100f, 100f), fill_paint);
※リストが表示されない場合
AddBlockなどの広告ブロックツールがONになっているとリストなどが表示されない場合があります。これらのツールをOFFにしてみてください。
public void onDraw(Canvas c) { c.drawColor(Color.BLACK); Paint fill_paint = new Paint(); fill_paint.setStyle(Paint.Style.FILL); fill_paint.setColor(Color.BLUE); c.drawRect(100f, 100f, 200f, 200f, fill_paint); fill_paint.setColor(Color.RED); c.drawOval(new RectF(0f, 0f, 100f, 100f), fill_paint); }
<< 前へ | 次へ >> |