有没有办法消除动画上的插值?

时间:2014-03-07 20:57:05

标签: android animation interpolation viewflipper

我确定我错过了一些显而易见的东西,但是我无法让我的ViewFlipper从一个布局顺利地动画制作到下一个布局。

我的愿望是让动画以恒定的速度移动。不加速或减速。整体所需的效果是使鳍状肢永久性地生成动画,没有明显的口吃或打嗝,这样两个(或更多)布局就会继续移动,就像在环形卷轴上一样。

然而,当我没有设置插值时,它默认为*某个默认的内置插值,在结束时减慢到0。

当我*设置插值时,没有数字我似乎能够传递给我平滑的动画结果。 0完全停止动画,1表示(看似)默认动作。

我在俯瞰什么?

这是我传递的动画方法(作为自定义Animation的一部分传递给ViewFlipper

public Animation inFromRightAnimation(int duration) {
    Animation inFromRight = new TranslateAnimation(
    Animation.RELATIVE_TO_PARENT,  +1.0f, Animation.RELATIVE_TO_PARENT,  0.0f,
    Animation.RELATIVE_TO_PARENT,  0.0f, Animation.RELATIVE_TO_PARENT,   0.0f
    );
    inFromRight.setDuration(duration);
    AccelerateInterpolator ai = new AccelerateInterpolator();//tried 0 and 1.0f as params without success

    inFromRight.setInterpolator(ai); //
    return inFromRight;
}

1 个答案:

答案 0 :(得分:3)

尝试使用LinearInterpolator代替AccelerateInterpolatorLinearInterpolator确保您的视图在没有任何加速或减速的情况下以恒定速度移动。