我有一些点,即按钮,从屏幕的顶部到底部垂直制作动画。
我已经实现了以下内容:
spot.animate().x(x2).y(y2).scaleX(SCALE_X).scaleY(SCALE_Y).setDuration(animationTime).setListener
(
new AnimatorListenerAdapter()
{
@Override
public void onAnimationStart(Animator animation)
{
animators.add(animation);
}
public void onAnimationEnd(Animator animation)
{
animators.remove(animation);
if (!gamePaused )
{
....
}
}
}
);
我发现这些按钮在开始时以加速的速度动画,在动画结束时减速。
如何使用LinearInterpolator
修改代码,以使动画在整个旅程中具有统一的速度?
谢谢!
答案 0 :(得分:1)
您是否尝试使用ViewPropertyAnimator类中的setInterpolator(TimeInterpolator interpolator)方法?所以你的代码看起来像是:
spot.animate().x(x2).y(y2).scaleX(SCALE_X).scaleY(SCALE_Y).setInterpolator(new LinearInterpolator()).setDuration(animationTime).setListener(
new AnimatorListenerAdapter()
{
@Override
public void onAnimationStart(Animator animation)
{
animators.add(animation);
}
public void onAnimationEnd(Animator animation)
{
animators.remove(animation);
if (!gamePaused )
{
....
}
}
}
);