Android Canvas画布相对位置
时间: 2023-10-09 07:12:58 浏览: 208
在 Android 中,Canvas 画布的相对位置指的是绘制的起点的坐标相对于 View 的坐标系的位置。Canvas 的默认坐标系原点在 View 的左上角,x 轴正方向向右,y 轴正方向向下。因此,如果你需要在 View 的中心绘制一个图形,你需要先获取 View 的宽和高,然后将画布的起点设置为 View 宽高的一半。具体代码如下:
```
@Override
protected void onDraw(Canvas canvas) {
super.onDraw(canvas);
int centerX = getWidth() / 2;
int centerY = getHeight() / 2;
// 将画布的起点设置为 View 的中心
canvas.translate(centerX, centerY);
// 在中心绘制一个圆形
canvas.drawCircle(0, 0, 100, mPaint);
}
```
在上面的代码中,我们先获取了 View 的宽和高,并计算出了 View 的中心点的坐标。然后通过 `canvas.translate(centerX, centerY)` 将画布的起点移动到了 View 的中心点,最后绘制了一个半径为 100 的圆形。这样就可以在 View 的中心绘制图形了。
阅读全文