Android技术知识程序员Android开发

Android旋转动画和平移动画混合效果

2016-07-19  本文已影响2786人  请手下留情

最近由于项目需要要做一个按钮的平移加旋转的动画效果,本以为是信手拈来的事,按部就班的写了以下代码:

RotateAnimation  rotateAnim =newRotateAnimation(0,-720,Animation.RELATIVE_TO_SELF,0.5f,Animation.RELATIVE_TO_SELF,0.5f);

TranslateAnimation translateAnim=newTranslateAnimation(Animation.ABSOLUTE,0,Animation.ABSOLUTE,-80,Animation.ABSOLUTE,0,Animation.ABSOLUTE,-80);

AnimationSet set=newAnimationSet(false);

set.addAnimation(translateAnim);

set.addAnimation(rotateAnim);

set.setFillAfter(true);

set.setDuration(300);

less.startAnimation(set);

运行后的效果是先平移到终点,然后开始旋转。而我想要的结果是在平移的过程中旋转,两个动画是同时进行的,而不是先后执行。代码看了半天也没一点错误,难道平移和旋转动画不能一起使用?

最后改了下面两段代码的顺序:

set.addAnimation(rotateAnim);

set.addAnimation(translateAnim);

在AnimationSet中先添加旋转动画,再添加平移动画,结果就可以同时执行了。

上一篇下一篇

猜你喜欢

热点阅读