Goodroid

GoodroidはAndroidアプリ開発のための情報をコラムやブログで紹介するサイトです。


Canvasに線を絵画する
ここではCanvasにテキストを表示する方法を確認していきます。

サンプルコードではアクティビティにテキストを表示するビューを追加して表示してます。アクティビティにビューを追加するにはActivityクラスで用意されている「setContentView」メソッドを使います。

CanvasActivity.java
import android.app.Activity;
import android.os.Bundle;

public class CanvasActivity extends Activity {
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);

        // 作成したビューオブジェクトを生成
        MyView myView = new MyView(this);

        // 生成したビューを表示する
        setContentView(myView);
    }
}


MyView.java
package goodroid.sample.canvas;

import android.content.Context;
import android.graphics.Canvas;
import android.graphics.Color;
import android.graphics.Paint;
import android.view.View;

public class MyView extends View{

    public MyView(Context context) {
	super(context);
    }

    protected void onDraw(Canvas canvas){
	super.onDraw(canvas);

	// 背景を白にする
	canvas.drawColor(Color.WHITE);

	// ペイントオブジェクトを生成
	Paint paint = new Paint();

	// 線の太さを変更
	paint.setStrokeWidth(10.0f);

	// 線の色を青にする
	paint.setColor(Color.BLUE);

	// 開始地点(100, 200)から終了地点(150, 400)まで線を引く
	canvas.drawLine(100, 200, 150, 400, paint);

	// 線の色を緑に変更する
	paint.setColor(Color.GREEN);

	// 開始地点(400, 200)から終了地点(400, 500)まで線を引く
	canvas.drawLine(400, 200, 400, 500, paint);
    }
}


「drawLine」メソッドを呼び出すと、直線を描画できます。
引数には、startX, startY, endX, endY、Paintインスタンスを設定します。

実行結果



2394 views | コメント:0 | 2012-06-02
コメント
まだこの記事にコメントはありません
コメントの投稿
名前 (必須)

メールアドレス (非公開)

本文(必須)

パスワード (必須)
(半角数字4桁)