自动布局更新动画

Android 提供预加载的动画,这些动画会在您更改布局时运行。在布局中设置一个属性,以告知 Android 系统对此类布局更改进行动画处理,系统就会为您执行系统默认动画。

向列表添加项时,默认布局动画如下所示:

图 1. 布局动画。
 

创建布局

在 activity 的布局 XML 文件中,将要启用动画的布局的 android:animateLayoutChanges 属性设置为 true

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

从布局中添加、更新或移除项

添加、移除或更新布局中的项,这些项会自动添加动画效果。

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);
}