Android中动画的几种编程方式

 1、加载XML的方式

在众多动画的编程方式中,我最喜欢用这种方式,原因很简单,直观,方便修改……看看一个实例代码:

新建一个aimn的文件夹,在此文件夹里面新建一个XML动画,里面包含动画的各种属性。

 

android:interpolator="@android:anim/accelerate_decelerate_interpolator"

android:fromDegrees="0"

android:toDegrees="360"

android:pivotX="0%"

android:pivotY="50%"

android:duration="1000"

/>

然后以代码的方式加载,下面是一个加载XML动画的部分代码:

 

 Animation mAnimationRotate = AnimationUtils.loadAnimation(mContext, R.anim.rotate_animation);

                startAnimation(mAnimationRotate);

这种方式适用于自定义View中加载动画。主要用来设置Frame 动画,即顺序播放事先做好的图像,和电影类似。

2、这种方式也属于加载XML的动画

该动画是放置在一个ImageView的控件里播放的,所以必须先将此动画设为ImageView的背景,然后再get出来,接着调用Animation的start()方法启动动画。大概代码如下:

explo是一个ImageView的对象

explo.setBackgroundResource(R.anim.explosion);

anim = (AnimationDrawable) explo.getBackground();

anim.start();

3、硬编码的方式

这种方式比较灵活,当然,这种方式也属于自定义View中播放动画,示例代码如下:

 

/* 创建Rotate动画 */

mAnimationRotate = new RotateAnimation(0.0f, +360.0f,

Animation.RELATIVE_TO_SELF, 0.5f,

Animation.RELATIVE_TO_SELF, 0.5f);

/* 设置动画的时间 */

mAnimationRotate.setDuration(1000);

/* 开始播放动画 */

this.startAnimation(mAnimationRotate);

2和3主要用来设置Frame动画。

 

 

 

你可能感兴趣的:(Android中动画的几种编程方式)