canvas.getClipBounds()。左边是0总是在android而放大画布 - canvas.getClipBounds().left is 0 always while zooming canvas in android
- 此内容更新于:2015-10-29
主题:
缩放后的帆布canvas.getClipBounds的价值()。离开总是0canvas.getClipBounds()。前总是0这些值缩放时从不改变。有任何错误的实现吗?
原文:
After zooming Canvas the value of
canvas.getClipBounds().left is always 0
canvas.getClipBounds().top is always 0
These value never changes while zooming.Is there any wrong implementation?
Rect clipBounds = new Rect(); int canvasLeft; @Override protected void onDraw(Canvas canvas) { super.onDraw(canvas); clipBounds = canvas.getClipBounds(); canvas.save(); canvasLeft = canvas.getClipBounds().left; if(scaleGestureDetector.isInProgress()){ scaleGestureFocusX = this.scaleGestureDetector.getFocusX(); scaleGestureFocusY = this.scaleGestureDetector.getFocusY(); canvas.scale(this.scaleFactor, this.scaleFactor, scaleGestureFocusX, scaleGestureFocusY); } else{ canvas.scale(this.scaleFactor, this.scaleFactor, scaleGestureFocusX, scaleGestureFocusY); } canvas.drawBitmap(bitmap, 0, 0, null); canvas.drawPath(path, paint); canvas.restore(); }