我有一个视图,必须使其可拖动。用户离开拖动后,将从当前位置向下动画。现在拖动时,我使用了以下代码
switch (event.getAction()) {
case MotionEvent.ACTION_DOWN:
dY = view.getY() - event.getRawY();
rawY = event.getRawY();
break;
case MotionEvent.ACTION_MOVE:
if ((event.getRawY() - rawY) < 0) {
isDragging = false;
return false;
}
isDragging = true;
view.animate()
.y(event.getRawY() + dY)
.setDuration(0)
.start();
break;
case MotionEvent.ACTION_UP:
if (!isDragging) {
return false;
}
animateContainer();
return true;
default:
return false;
}
return true;
拖动工作正常,并且当用户释放拖动时将容器动画化后。但是,当我再次按下按钮以打开容器时,它并没有达到其原始高度。它返回到上一个拖动位置。
我该怎么解决。谢谢