Custom android AccelerateDecelerateInterpolator(定制Android AccelerateDecelerateInterpolator)
问题描述
我正在尝试使用AccelerateDecelerateInterpolator并对其进行自定义。 我可以看到,像DecelerateInterpolator这样的Interpolator有一个"factor"字段,这样您就可以更改它的行为。但是AccelerateDecelerateInterpolator没有。 当我使用AccelerateDecelerateInterpolator时,我几乎没有注意到插补器在做任何事情。动画看起来非常线性。那么,有没有办法对AccelerateDecelerateInterpolator进行分解或以任何方式对其进行更改? 谢谢
推荐答案
您可以用自己的Interpolator
实现标准的缓动功能。
例如,这将是easeInOutQuint
:
public class MVAccelerateDecelerateInterpolator implements Interpolator {
// easeInOutQuint
public float getInterpolation(float t) {
float x = t*2.0f;
if (t<0.5f) return 0.5f*x*x*x*x*x;
x = (t-0.5f)*2-1;
return 0.5f*x*x*x*x*x+1;
}
}
这篇关于定制Android AccelerateDecelerateInterpolator的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!