我目前正在制作一个 android 应用程序,它允许用户从列表中添加一些图像到屏幕上,并且允许用户在其上拖动图像。
我可以使用 onTouch 方法拖动图像。但是我遇到了一个问题,当我将图像视图拖动到左侧或底部大小时
imageview 将自动调整大小并且不能将其拖出到布局中。
如何在不调整图像视图大小的情况下将其拖到布局之外?
@Override
public boolean onTouch(View view, MotionEvent event) {
ImageView imageView = (ImageView)view;
imageView.bringToFront();
// Handle event
switch (event.getAction() & MotionEvent.ACTION_MASK) {
case MotionEvent.ACTION_DOWN: {
startPoint.set(event.getX(), event.getY());
currentMode = EVENT_DRAG;
break;
}
case MotionEvent.ACTION_UP:
case MotionEvent.ACTION_POINTER_UP: {
currentMode = EVENT_NONE;
break;
}
case MotionEvent.ACTION_MOVE: {
RelativeLayout.LayoutParams layoutPrarms = (RelativeLayout.LayoutParams)imageView.getLayoutParams();
int left = layoutPrarms.leftMargin + (int)(event.getX() - startPoint.x);
int top = layoutPrarms.topMargin + (int)(event.getY() - startPoint.y);
layoutPrarms.leftMargin = left;
layoutPrarms.topMargin = top;
imageView.setLayoutParams(layoutPrarms);
break;
}
}
// Indicate event was handled
return true;
}