@Override public void onSpringUpdate(Spring spring) {
double val = spring.getCurrentValue();
switch (dragPosition) {
case LEFT:
ViewCompat.setTranslationX(dragView,
(float) SpringUtil.mapValueFromRangeToRange(val, 0, 1, 0, -dragView.getWidth()));
break;
case RIGHT:
ViewCompat.setTranslationX(dragView,
(float) SpringUtil.mapValueFromRangeToRange(val, 0, 1, 0, dragView.getWidth()));
break;
case TOP:
ViewCompat.setTranslationY(dragView,
(float) SpringUtil.mapValueFromRangeToRange(val, 0, 1, 0, dragView.getHeight()));
break;
case BOTTOM:
ViewCompat.setTranslationY(dragView,
(float) SpringUtil.mapValueFromRangeToRange(val, 0, 1, 0, -dragView.getHeight()));
break;
default:
break;
}
ViewCompat.setAlpha(shadowView,
(float) (MAX_ALPHA - SpringUtil.mapValueFromRangeToRange(val, 0, 1, 0, 1)));
if (draggerCallback != null) {
draggerCallback.onProgress(spring.getCurrentValue());
}
}