我正在使用自定义视图和画布在屏幕上绘制对象。视图位于屏幕原点的 Y 偏移处。我想翻译画布,然后绘制一个对象。但是,当我使用 setmatrix 翻译画布时,原点会从视图原点转移到屏幕原点。根据下面的代码,应该在视图原点绘制圆圈。但是我需要在绘制圆圈时添加视图从屏幕原点的偏移量。我如何达到预期的效果?
protected void onDraw(Canvas canvas)
{
super.onDraw(canvas);
canvas.drawPaint(canvasPaint);
m_canvasMatrix.set(getMatrix());
m_canvasMatrix.postTranslate(-100, -100);
canvas.setMatrix(m_canvasMatrix);
canvas.drawCircle(100, 100, 20, circlePaint);
}