我在onDraw
中按以下方式缩放画布:
canvas.scale(mScaleFactor, mScaleFactor, mScaleFocusX, mScaleFocusY);
我的 onScale 函数如下:
private float mScaleFactor = 1.f;
public boolean onScale(ScaleGestureDetector detector) {
mScaleFactor *= detector.getScaleFactor();
mScaleFocusX = detector.getFocusX();
mScaleFocusY = detector.getFocusY();
// Don't let the object get too small or too large.
mScaleFactor = Math.max(0.1f, Math.min(mScaleFactor, 5.0f));
invalidate();
return true;
}
现在我使用onTouchEvent
获取更多的点来创建新的path
,最终我想要绘制。onTouchEvent
给我x和y,但没有考虑缩放发生的情况。我如何知道缩放后x和y的新位置呢?
canvas.scale
.... 目前我没有以任何其他方式使用它们。 - SharonKo