我们都知道,一个动画实例可以有两种方式来实现:
1、纯Java代码
RotateAnimation rotateAnimation = new RotateAnimation(0,360,
Animation.RELATIVE_TO_SELF,1f,
Animation.RELATIVE_TO_SELF,1f);
rotateAnimation.setDuration(2000);
imageView.startAnimation(rotateAnimation);
2、xml配置文件和Java代码
res/anim/rotate.xml:
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android"
android:shareInterpolator="@android:anim/accelerate_interpolator">
<rotate
android:fromDegrees="0"
android:toDegrees="+360"
android:pivotX="100%"
android:pivotY="100%"/>
<!--
pivotX和pivotY值的给定
pivotX="50" 绝对定位的方式
pivotX="50%" 相对于控件自身
pivotX="50%p" 相对于父控件
-->
</set>
java代码:
Animation rotateAnimation = AnimationUtils.loadAnimation(context, R.anim.rotate_anim);
imageView.startAnimation(rotateAnimation);
经测试中发现
1、使用第一种纯Java代码方式生成的动画,在设置重复次数时,对Animation对象设置有效,对AnimationSet对象设置无效。
2、使用第二种xml配置加Java代码生成的动画,无论对Animation对象设置,还是AnimationSet对象设置,都无效。原因未知(-_-)!