ObjectAnimator跳转到动画结束。从不显示中间框架

时间:2014-06-10 19:21:48

标签: android android-animation

我在onCreate方法中使用了这段代码

  

ObjectAnimator       .ofFloat(ad," alpha",0.0f,1.0f)       .setDuration(10000)       。开始();

从不显示动画,只是跳转到最终值,这意味着工作但持续时间被解释为0。

2 个答案:

答案 0 :(得分:1)

如果您在某处导航/完成活动,则需要等待动画完成,为此,您需要实现Animator.AnimatorListener(您想要覆盖" onAnimationEnd"方法)

像这样:

ObjectAnimator a = ObjectAnimator.ofFloat(ad, "alpha", 0.0f, 1.0f).setDuration(10000);
a.addListener(new AnimationListener());
a.start();

...

private class AnimationListener implements Animator.AnimatorListener {
    @Override
    public void onAnimationEnd(Animator animation) {
        //do stuff here
    }
    @Override
    public void onAnimationCancel(Animator animation) {}
    @Override
    public void onAnimationRepeat(Animator animation) {}
    @Override
    public void onAnimationStart(Animator animation) {}
}

答案 1 :(得分:0)

你离开了插补器

ObjectAnimator objAnim =ObjectAnimator.ofFloat(ad, "alpha", 0.0f, 1.0f); objAnim.setInterpolator(new LinearInterpolator()); objAnim.setDuration(10000) objAnim.start();