constraintLayout.setOnTouchListener(new View.OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent event) {
switch (event.getAction()) {
case MotionEvent.ACTION_DOWN:// 获取手指第一次接触屏幕
sx = (int) event.getRawX();
sy = (int) event.getRawY();
break;
case MotionEvent.ACTION_MOVE:// 手指在屏幕上移动对应的事件
gundong1.pause();
// int x = (int) event.getRawX();
// int y = (int) event.getRawY();
// 获取手指移动的距离
// int dx = x - sx;
// int dy = y - sy;
// // 得到imageView最开始的各顶点的坐标
// int l = inflate.getLeft();
// int r = inflate.getRight();
// int t = inflate.getTop();
// int b = inflate.getBottom();
// 更改imageView在窗体的位置
// inflate.layout(l + dx, t + dy, r + dx, b + dy);
// 获取移动后的位置
sx = (int) event.getRawX();
sy = (int) event.getRawY();
constraintLayout.setY(sy-constraintLayout.getHeight()/2);
constraintLayout.setX(sx-constraintLayout.getWidth()/2);
break;
case MotionEvent.ACTION_UP:// 手指离开屏幕对应事件
if (sx>=layout_zhu.getX()&&sx<=layout_zhu.getX()+layout_zhu.getWidth()
&&sy>=layout_zhu.getY()&&sy<=layout_zhu.getY()+layout_zhu.getHeight()
)
{
}else{
}
break;
}
return true;
}
});