所谓布局动画是指作用在ViewGroup上,给ViewGroup增加View时添加一个动画过渡效果。
最简单的布局动画是在ViewGroup的XML中,使用一下代码来打开布局动画。
android:animateLayoutChanges="true"
【Android|Android 布局动画】通过以上代码设置,当ViewGroup添加View时,子View会呈现逐渐显示过渡效果,不过这个效果是Android默认的显示的过渡效果,且无法使用自定义的动画来替换这个效果。
另外,还可以通过使用LayoutAnimationController类来自定义一个子View的过渡效果,代码如下所示。
LinearLayout ll = findViewById(R.id.ll);
ScaleAnimation sa = new ScaleAnimation(0,1,0,1);
sa.setDuration(2000);
LayoutAnimationController lac = new LayoutAnimationController(sa,0.5F);
lac.setOrder(LayoutAnimationController.ORDER_NORMAL);
ll.setLayoutAnimation(lac);
通过以上代码,给LinearLayout增加了一个视图动画,让子View在出现的时候,有一个缩放的动画效果。
LayoutAnimationController的第一个参数,是需要作用的动画,而第二个参数,则是每个子View显示的delay时间。当delay时间不为0时,可以设置子View显示的顺序,如下所示。
● LayoutAnimationController.ORDER_NORMAL——顺序
● LayoutAnimationController.ORDER_RANDOM——随机
● LayoutAnimationController.ORDER_REVERSE——反序