Анимация изменения макета

Анимация макета это предварительно загруженная анимация, которую система выполняет каждый раз при внесении изменений в конфигурацию макета. Все что вам нужно сделать, это установить атрибут в макете, чтобы указать Android системе о необходимости анимировать эти изменения макета, и система анимации по умолчанию сделает это для вас.

Полезный совет: Если вы хотите добавить пользовательскую анимацию макета, создайте LayoutTransition объект и установите его в макет с помощью setLayoutTransition() метода.

Вот как анимация макета по умолчанию выглядит при добавлении элементов в список:

Анимация макета
 

Если вы хотите перейти вперед и увидеть полный рабочий пример, скачать и запустить пример приложения, выберите пример Crossfade. Смотрите следующие файлы для реализации кода:

  1. src/LayoutChangesActivity.java
  2. layout/activity_layout_changes.xml
  3. menu/activity_layout_changes.xml

Создание макета

В XML-файле макета вашей деятельности, установите android:animateLayoutChanges атрибут в true для макета, для которого вы хотите включить анимацию. Например:

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

Добавление, обновление и удаление элементов из макета

Теперь, все, что вам нужно сделать, это добавить, удалить или обновить элементы в макете, и элементы будут анимированы автоматически:

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