首页 > 代码库 > 补间动画之 AlphaAnimation

补间动画之 AlphaAnimation

当前Android应用框架支持5种补间动画。如下:

AlphaAnimation:透明度(alpha)渐变效果,对应<alpha/>标签。

TranslateAnimation:位移渐变,需要指定移动点的开始和结束坐标,对应<translate/>标签。

ScaleAnimation:缩放渐变,可以指定缩放的参考点,对应<scale/>标签。

RotateAnimation:旋转渐变,可以指定旋转的参考点,对应<rotate/>标签。

AnimationSet:组合渐变,支持组合多种渐变效果,对应<set/>标签。

 

现在我们主要说说AlphaAnimation,AlphaAnimation可以实现“淡入淡出”效果,例如游戏欢迎logo的淡入淡出效果就使用AlphaAnimation来实现的。

AlphaAnimation可以通过两种方式来实现动画效果,

第一种:Java Code 代码形势

    iv = (ImageView) findViewById(R.id.imageView1);        // 创建动画效果        final AlphaAnimation ani = new AlphaAnimation(0, 1);        // 设置动画持续时间        ani.setDuration(5000);        // 动画重复次数        ani.setRepeatCount(1);        // 设置动画重复模式为反方向执行        ani.setRepeatMode(Animation.REVERSE);                        btn2 = (Button) findViewById(R.id.button1);        btn2.setOnClickListener(new OnClickListener() {            @Override            public void onClick(View v) {                // 给IamgeView设置动画,并开始                iv.startAnimation(ani);                //取消动画                //ani.cancel();            }        });
View Code

 

 

第二种:XML实现动画效果

myalpha.xml文件

<?xml version="1.0" encoding="utf-8"?><alpha xmlns:android="http://schemas.android.com/apk/res/android"    android:duration="5000"    android:fromAlpha="0.0"    android:toAlpha="1.0" ></alpha>

 

JavaCode:

final ImageView iv = (ImageView) findViewById(R.id.imageView1);        // 创建动画效果        final Animation animation = AnimationUtils.loadAnimation(this, R.anim.myalpha);                btn2 = (Button) findViewById(R.id.button1);        btn2.setOnClickListener(new OnClickListener() {            @Override            public void onClick(View v) {                // 给IamgeView设置动画,并开始                iv.startAnimation(animation);            }        });
View Code

 

关于AlphaAnimation还有很多方法和属性。具体可以看官方API