gpt4 book ai didi

Android ViewPropertyAnimator 和 ValueAnimator : How can I do fast-forward?

转载 作者:太空狗 更新时间:2023-10-29 14:04:20 27 4
gpt4 key购买 nike

我正在像这样使用 ViewPropertyAnimator:

view.animate().alpha(to).setDuration(duration);

和 ValueAnimator:

ValueAnimator anim = ValueAnimator.ofInt(0, width);
anim.addUpdateListener(new ValueAnimator.AnimatorUpdateListener() {
@Override
public void onAnimationUpdate(ValueAnimator valueAnimator) {
viewGroup.setMinimumWidth((Integer) valueAnimator.getAnimatedValue());
}
});
anim.setDuration(duration).start();

有时我想在动画完成之前取消它,但仍然立即应用剩余的步骤(就好像动画已经完成一样)。是否有一种使用 API 来完成此操作的简单方法,或者我是否需要将 Animators 包装在另一个类中并自行处理?

最佳答案

有两种方法可以停止正在运行的动画。

Animator.end()     // end the animation
Animator.cancel() // cancel the animation

您可以使用end() 方法或cancel() 方法。在这两种情况下,动画都会停止并且只能通过调用 start() 重新启动。
end()cancel() 之间的区别在于动画对象在调用该方法后所处的状态。
当调用 cancel() 时,动画将停止在其轨道上,使动画对象处于中间状态。

当调用 end() 方法时,动画将有效地快进到动画的最终状态。

所有对象都将以它们在动画结束时的方式出现。

来源:http://cogitolearning.co.uk/?p=1482

关于Android ViewPropertyAnimator 和 ValueAnimator : How can I do fast-forward?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33585480/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com