我正在开发一个应用程序,要求如下。
用捏缩放和平移显示图像。
它正在按预期工作。
在图像上绘制实心圆圈。
这也有效。
public class NavigationViewZoom extends TouchImageView {
private Paint mPaint = new Paint(Paint.ANTI_ALIAS_FLAG);
@Override
public void setImageBitmap(Bitmap bm) {
super.setImageBitmap(bm);
}
@Override
protected void onDraw(Canvas canvas) {
super.onDraw(canvas);
canvas.drawCircle(300, 120, 50, mPaint);
}
public NavigationViewZoom(Context c) {
super(c);
init();
}
public NavigationViewZoom(Context c, AttributeSet attrs) {
super(c, attrs);
setDrawingCacheEnabled(true);
init();
}
private void init() {
mPaint.setColor(Color.RED);
mPaint.setStyle(Paint.Style.FILL);
}
}
问题:
现在的问题是,在画布上绘制实心圆圈后放大/缩小图像时,圆圈位置不受管理。
例如,在缩放图像后,我在位置 x=100,y=100 上绘制实心圆,圆应该在同一位置。那么如何获得缩放图像上的相对 x,y 位置。