Canvasを回転させる |
ここではCanvasを回転させる方法を確認していきます。
サンプルコードではアクティビティに円を絵画するビューを追加して表示してます。アクティビティにビューを追加するにはActivityクラスで用意されている「setContentView」メソッドを使います。 RotateActivity.java package goodroid.sample.circle; import goodroid.sample.circle.MyView; import android.app.Activity; import android.os.Bundle; public class RotateActivity 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.rotate; 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.setTextSize(80); // "回転前"の文字を表示する canvas.drawText("回転前", 30, 100, paint); // 絵画する太さを変更 paint.setStrokeWidth(10); // 色を赤に変更 paint.setColor(Color.RED); // 点を描画(回転位置確認用) canvas.drawPoint(30, 150, paint); // キャンパスを位置(30, 150)を中心に時計回りに90度回転 canvas.rotate(90, 30, 150); // "回転後"の文字を表示する canvas.drawText("回転後", 30, 100, paint); } } 「rotate」メソッドを呼び出すと、Canvasを回転させることができます。 引数には、degrees, positionX, positionYを設定します。 サンプルコードでは画面上の赤い点(30, 150)を中心にCanvasを時計周りに90度回転させています。 実行結果 ![]() |
7788 views | コメント:0 | 2012-06-02 |
コメント
|
|
まだこの記事にコメントはありません |