How to implement ItemAnimator of RecyclerView to disable the animation of notifyItemChanged

I have found the correct solution to just remove the animateChange.

It's very simple. Google has implemented the functionality.

((SimpleItemAnimator) RecyclerView.getItemAnimator()).setSupportsChangeAnimations(false);

Documentation: setSupportsChangeAnimations


I had the same problem. When calling notifyItemChanged there was a red overlay flashing. After experimenting around with your code I finally removed the default Animator by simply calling

recyclerView.setItemAnimator(null);

on the RecyclerView.


@Kenny answer didn't work anymore because google remove method setSupportsChangeAnimations() (but why?) in support library 23.1.0.

In some case setChangeDuration(0) can work as workaround.

@edit I suggest use something like that:

  RecyclerView.ItemAnimator animator = recyclerView.getItemAnimator();
        if (animator instanceof SimpleItemAnimator) {
            ((SimpleItemAnimator) animator).setSupportsChangeAnimations(false);
        }