Layout动画:在android布局发生变化时添加动画效果
                 ScottySalti
                 10年前
            
                    注:本文涉及到的知识很初级,强烈建议阅读这篇文章:Android LayoutAnimation使用及扩展
layout动画在每次布局发生变化的时候系统调用的一个预加载动画效果,使用layout动画可以让布局的变化过度看起来更自然。使用起来很简单,只需在控件中添加一个属性就可以了,系统默认是不会启动layout动画的,因此我们平时的应用中不会产生这个效果。
当然,如果你想自定义一下这个动画效果,那就必须在代码中自己写了:新建一个LayoutTransition对象,调用setLayoutTransition()方法来为layout设置动画。
下面是在xml中通过设置属性得到的默认动画效果:

使用方法:
在activity的xml中,设置android:animateLayoutChanges属性:
<LinearLayout android:id="@+id/container" android:animateLayoutChanges="true" ... />
这样,当该LinearLayout中的布局发生变化时,将会有动画效果。
什么情况下布局会在运行时改变呢,一般都是你的代码中调用了addView 之类的方法:
private ViewGroup mContainerView;  ...  private void addItem() {      View newView;      ...      mContainerView.addView(newView, 0);  } 好了,这个东西很简单,只是平时很少注意到,只要记得android自带这个功能就行了,免得到时候自己去实现。