我使用XML动画来模拟垂直翻转的图像:
<scale
android:duration="30"
android:fillAfter="false"
android:fromXScale="1.0"
android:fromYScale="1.0"
android:interpolator="@android:anim/accelerate_interpolator"
android:repeatCount="30"
android:repeatMode="reverse"
android:startOffset="200"
android:toXScale="0.0"
android:toYScale="1.0" />
<translate
android:duration="30"
android:fromXDelta="0"
android:interpolator="@android:anim/accelerate_interpolator"
android:repeatCount="30"
android:repeatMode="reverse"
android:startOffset="200"
android:toXDelta="50%" />
上面的动画基本上缩小然后放大并重复30次。我希望它能够随着每个新动画的发生而变得更快。我尝试使用@android:anim/accelerate_interpolator
,但似乎该选项只能加快实际动画的速度,所以我只有同样节奏的动画发生了30次。
答案 0 :(得分:0)
AFAIK,你只能通过Java而不是通过XML来实现这一点。
您需要在Java代码中创建翻译动画,并且您可以使用yourTranslation.setDuration(1000);
int
以毫秒为单位。
因此,您可以将动画置于将运行30次的for-loop
中,并使用将在每次迭代时增加的变量(对应于i++
),这样可以提高动画速度。