安卓动画(Animation使用)

安卓的Animation视图动画的使用非常简单,并且对象适用于一般控件。

具体使用步骤如下。

    

 Button/TextView/EditText/ImageView/Bitmap .....   object;  //实例化一个控件对象


AlphaAnimation alphaAnimation = new AlphaAnimation(0,1);       //透明度动画函数,表示由零到一,0为透明,1为不透明。
alphaAnimation.setDuration(3000);                //设置动画持续三秒钟

RotateAnimation rotateAnimation = new RotateAnimation(0,360,Animation.RELATIVE_TO_SELF,0); //旋转动画函数,0,360共同决定了旋转的角度,第三个参数
rotateAnimation.setDuration(3000);

表示相对于哪个参考系旋转。

TranslateAnimation translateAnimation = new TranslateAnimation(0,100,0,10);    //平移动画的使用,第一个参数和第二个参数表示的是平移前后的x
坐标的值,第三个和第四个参数表示平移前后y坐标的值。

translateAnimation.setDuration(3000);

然后就可以给控件的对象使用这些动画了,具体使用方法如下。

object.startAnimation(translateAnimation/alphaAnimation/rotateAnimation);

这样就可以是部件具有动画效果了,如果想持续动画效果,需要加入多线程。这里就不讲了。


有的学者还想使部件具有不止一个动画效果,这个也简单,具体实现步骤如下:


AnimationSet animationSet = new AnimationSet(true);//共用动画补间
animationSet.setDuration(3000);

AlphaAnimation alphaAnimation = new AlphaAnimation(0,1);
TranslateAnimation translateAnimation = new TranslateAnimation(0,100,0,10);

animationSet.addAnimation(alphaAnimation);
animationSet.addAnimation(translateAnimation);

object.startAnimation(animationSet);

 这样就使部件具有多个动画效果了。


原文地址:https://www.cnblogs.com/viplanyue/p/12700759.html