我在onCreate方法中使用了这段代码
ObjectAnimator .ofFloat(ad," alpha",0.0f,1.0f) .setDuration(10000) 。开始();
从不显示动画,只是跳转到最终值,这意味着工作但持续时间被解释为0。
答案 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();