以下是我的动画
的rotate_center.xml文件<?xml version="1.0" encoding="UTF-8"?>
<rotate
xmlns:android="http://schemas.android.com/apk/res/android"
android:interpolator="@anim/linear_interpolator"
android:fromDegrees="0"
android:toDegrees="350"
android:pivotX="50%"
android:pivotY="50%"
android:repeatCount="infinite"
android:duration="2000" />
我尝试在我的.class中做什么
tweenAnimation = (ImageView) findViewById(R.id.imgTweenAnimation);
Animation animationRotateCenter= AnimationUtils.loadAnimation(this, R.anim.rotate_center);
tweenAnimation.startAnimation(animationRotateCenter);
while(count < animationRotateCenter.getDuration())
{
count++;
if(count == 4000)
{
Log.i(getPackageName(), getLocationClassName() + ": " + count);
break;
}
}
//Move to next Intent
问题是,我执行得很好,但没有显示动画。逻辑在后台运行良好,直到它被执行,然后它会中断并直接移动到下一个活动。在这件事情发生时,它只会冻结屏幕。实现补间动画的任何其他选项将在一段固定的时间内执行,之后在完成动画时执行其他任务。我选择这种技术而不是逐帧动画,因为逐帧动画需要单独的.png或.9.png,因此增加了我想避免的.apk文件大小。
答案 0 :(得分:0)
1,你检查了animationRotateCenter.getDuration()的值吗? 2,我认为你不应该使用android:repeatCount =“infinite”。 希望对你有所帮助。