
This is the default one that is used by recyclerview and already handles animating adding, removing, moving items gracefully. To do that, I need to override canReuseUpdatedViewHolder method and return true:,So my first step will be to extend DefaultItemAnimator() and override animateChange() method:,Simplest way of creating a custom item animator is to extend DefaultItemAnimator(). I want to keep the same viewholder instance and I want to start animating the heart on that one.

As I don’t want a cross-fade animation, I don’t want two instances of the viewholder. As the DefaultItemAnimator uses cross-fade for item change animations, it creates two instances of the viewholder for the same position and it cross-fades between the two.

You can see that this method receives an oldHolder and a newHolder.
