在我的Android应用程序中,我有一个具有自定义相对布局(zoomable)的活动,其中有一个包含图像视图(与图片相关联)的相对布局,以及两个图像视图(与画布圈相关联) )。现在,圆圈可以移动覆盖图片(用户通过触摸拖动圆圈),这可以工作,但是当我尝试缩放图片并移动圆圈时,这些参数随布局的相同参数移动缩放,也就是说,它们的移动被缩放因子的相同因子放大。例如,当布局被缩放时,我稍微拖动一个圆圈,这就太动了!圆形图像视图上的触摸事件代码如下:
@Override
public boolean onTouchEvent( MotionEvent event) {
switch (event.getAction()) {
case MotionEvent.ACTION_DOWN:
dX = (this.getX() - event.getRawX());
dY = (this.getY() - event.getRawY());
break;
case MotionEvent.ACTION_MOVE:
this.animate()
.x((event.getRawX() + dX))
.y((event.getRawY() + dY))
.setDuration(0)
.start();
break;
default:
return false;
}
return true;
}
有人知道如何修复它吗?