动画——帧动画(Drawable Animation)
概述:
帧动画就是在一段时间内执行多少帧,每一帧都是Drawable下的一个
资源文件。也就是说一段时间内播放多少个drawable,其本质就是
drawable。这种动画往往会使用大量的图片,不但适配复杂,而且
会增加安装包的体积,更有甚者出现内存溢出的情况。非绝境,不
建议使用!使用:
第一步:定义帧动画
在drawable目录下使用根节点,这个根结
点包含一个或多个元素。根节点属性:
android:oneshot=”true|false”:是否只执行一次
android:variablePadding=”true|false”:padding是否
随着drawable的变化而改变item节点的属性:
android:drawable:一帧的资源
android:duration:本item节点持续的时间第二步:使用帧动画(本例动画的名称是:frame_animation1)
在布局文件中引用刚刚定义的动画:frame_animation1
android:background="@drawable/frame_animation1"
或者使用Java代码调用:
view.setBackgroundResource(R.drawable.frame_animation1);
第三步:开启动画
AnimationDrawable animation = (AnimationDrawable) view.getBackground();
animation.start();- 注意事项:
AnimationDrawable的start()方法不能在Activity的onCreate
方法中调运,因为AnimationDrawable还未完全附着到window上,
所以最好的调运时机是onWindowFocusChanged()方法中。