Canvas

1、 对象创建 & 获取

// 方法1
// 利用空构造方法直接创建对象
Canvas canvas = new Canvas();

// 方法2
// 通过传入装载画布Bitmap对象创建Canvas对象
// CBitmap上存储所有绘制在Canvas的信息
Canvas canvas = new Canvas(bitmap)

// 方法3
// 通过重写View.onDraw()创建Canvas对象
// 在该方法里可以获得这个View对应的Canvas对象

@Override
protected void onDraw(Canvas canvas) {
    super.onDraw(canvas);
    //在这里获取Canvas对象
}

// 方法4
// 在SurfaceView里画图时创建Canvas对象

    SurfaceView surfaceView = new SurfaceView(this);
    // 从SurfaceView的surfaceHolder里锁定获取Canvas
    SurfaceHolder surfaceHolder = surfaceView.getHolder();
    //获取Canvas
    Canvas c = surfaceHolder.lockCanvas();
    
    // ...(进行Canvas操作)
    // Canvas操作结束之后解锁并执行Canvas
    surfaceHolder.unlockCanvasAndPost(c);

2 、绘制方法使用

利用Canvas类可绘画出很多内容,如图形、文字、线条等等;
对应使用的方法如下:
Canvas具体使用时是在复写的onDraw()里:

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

   // 对Canvas进行一系列设置
   //  如画圆、画直线等等
   canvas.drawColor(Color.BLUE); 
   // ...
}
}
image.png

你可能感兴趣的:(Canvas)