注:本文翻译自Google官方的Android Developers Training文档,译者技术一般,由于喜爱安卓而产生了翻译的念头,纯属个人兴趣爱好。
原文链接:http://developer.android.com/training/animation/layout.html
一个布局变更动画是一个预加载的动画,当每次你对布局配置进行修改以后,系统就会运行这个动画。所有你需要做的就是在布局中设置一个属性,来告诉Android系统来执行这个布局变更动画,然后系统默认动画会对其进行执行。
Tip:
如果你希望用自定义的布局变更动画,创建一个LayoutTransition对象,然后然后将它通过setLayoutTransition()方法配置给布局。
下面是向一个列表添加项目时的默认动画:
如果你希望略过这部分内容直接看代码样例,可以直接下载样例代码,然后选择淡入淡出动画的例子。下面的文件是实现代码:
src/LayoutChangesActivity.java
layout/activity_layout_changes.xml
menu/activity_layout_changes.xml
一). 创建布局
在你的activity的布局XML文件中,将你希望启用动画的布局的android:animateLayoutChanges属性设置为true。
<LinearLayout android:id="@+id/container"
android:animateLayoutChanges="true"
...
/>
二). 添加、更新、或者删除布局中的项目
现在你要做的就是在布局中添加、更新或删除项目,该项目会自动执行系统默认的动画:
private ViewGroup mContainerView;
...
private void addItem() {
View newView;
...
mContainerView.addView(newView, 0);
}