逐渐增加/减少动画速度? [Android]产品

时间:2013-04-25 09:05:44

标签: android animation

我正在研究android上的动画效果,我想知道是否有其他方法可以逐渐增加/减少动画速度?

是否有可能指定前3秒的变化速度很慢,其余的变速很快?

1 个答案:

答案 0 :(得分:5)

使用Interpolator。对于您的情况,我建议AccelerateDecelerateInterpolator

Animation anim = AnimationUtils.loadAnimation(this, R.anim.your_animation);
anim.setInterpolator(new AccelerateDecelerateInterpolator());
image.startAnimation(anim);

至于插补器,你可以建立自己的!

public class MyInterpolator extends Interpolator {

    public MyInterpolator(int valueCount) {
        super(valueCount);
    }

    public float getInterpolation (float input) {
        return (float)(Math.cos((input + 1) * Math.PI) / 2.0f) + 0.5f;
    }
}

使用Wolfram Alpha可以使用参数。