自动动画布局更新

Android 提供了在您更改布局时运行的预加载动画。在布局中设置一个属性以告诉 Android 系统为这些布局更改设置动画,它会为您执行系统默认动画。

以下是向列表中添加项目时默认布局动画的外观

图 1. 布局动画。
 

创建布局

在您活动中的布局 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);
}