Created
February 24, 2017 10:11
-
-
Save imran0101/55deb8fa3d17840f05c006728a231327 to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
void remove(final TodoItem item, final TodoItemAdapterCallback callback, | |
final int adapterPosition) { | |
final ValueAnimator elevateAnimator = ValueAnimator.ofFloat(1f, 1.05f); | |
elevateAnimator.addUpdateListener(new ValueAnimator.AnimatorUpdateListener() { | |
@Override public void onAnimationUpdate(ValueAnimator animation) { | |
float animatedValue = (float) animation.getAnimatedValue(); | |
ViewCompat.setTranslationZ(cardTodo, animatedValue); | |
ViewCompat.setScaleX(cardTodo, animatedValue); | |
ViewCompat.setScaleY(cardTodo, animatedValue); | |
} | |
}); | |
elevateAnimator.setInterpolator(new FastOutSlowInInterpolator()); | |
elevateAnimator.setDuration(300); | |
ValueAnimator valueAnimator = ValueAnimator.ofFloat(itemView.getScaleX(), 0); | |
valueAnimator.addUpdateListener(new ValueAnimator.AnimatorUpdateListener() { | |
@Override public void onAnimationUpdate(ValueAnimator valueAnimator) { | |
float animatedValue = (float) valueAnimator.getAnimatedValue(); | |
ViewCompat.setScaleX(itemView, animatedValue); | |
} | |
}); | |
valueAnimator.addListener(new Animator.AnimatorListener() { | |
@Override public void onAnimationStart(Animator animation) { | |
} | |
@Override public void onAnimationEnd(Animator animation) { | |
cardTodo.setScaleX(1f); | |
cardTodo.setScaleY(1f); | |
callback.remove(adapterPosition, item); | |
} | |
@Override public void onAnimationCancel(Animator animation) { | |
} | |
@Override public void onAnimationRepeat(Animator animation) { | |
} | |
}); | |
valueAnimator.setInterpolator(new FastOutSlowInInterpolator()); | |
valueAnimator.setDuration(300); | |
AnimatorSet animatorSet = new AnimatorSet(); | |
animatorSet.playSequentially(elevateAnimator, valueAnimator); | |
animatorSet.start(); | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment