注:本文翻译自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 ); }