Auto-animate layout updates

Android offers preloaded animation that runs when you change the layout. Set an attribute in the layout to tell the Android system to animate these layout changes, and it carries out system-default animations for you.

Here's what a default layout animation looks like when adding items to a list:

Figure 1. Layout animation.
 

Create the layout

In your activity's layout XML file, set the android:animateLayoutChanges attribute to true for the layout that you want to enable animations for:

<LinearLayout android:id="@+id/container"
    android:animateLayoutChanges="true"
    ...
/>

Add, update, or remove items from the layout

Add, remove, or update items in the layout, and the items are animated automatically:

Kotlin

lateinit var containerView: ViewGroup
...
private fun addItem() {
    val newView: View = ...

    containerView.addView(newView, 0)
}

Java

private ViewGroup containerView;
...
private void addItem() {
    View newView;
    ...
    containerView.addView(newView, 0);
}