如果动画在同一视图上运行两次,则第二次不会调用onAnimationEnd()

时间:2016-05-22 16:42:15

标签: android progress-bar objectanimator

我正在开发一个用于检测所有手势的基本应用程序(单击,双击,滑动,摇动)。我也已经实施了等待。我,直到动画完成。

我使用 ObjectAnimator 将水平进度条用作计时器。

因为我正在显示像单击这样的文字,如果除此之外的任何动作都已完成,则表示错误。

因此,如果我没有执行任何操作,首次显示WAIT文本时, onAnimationEnd 将被调用。

以下是我的代码。

objectAnimator = ObjectAnimator.ofInt(timerProgress, "progress", 0, 100); objectAnimator.setDuration(progressTime); objectAnimator.setInterpolator(new AccelerateInterpolator()); objectAnimator.setEvaluator(new IntEvaluator()); objectAnimator.addListener(new AnimatorListenerAdapter() { @Override public void onAnimationEnd(Animator animation) { super.onAnimationEnd(animation); if (timerProgress.getProgress() != 100) { return; } if (!isTouched) { onTouch(Constants.WAIT); } } });

如果我在WAIT之后设置任何文本(例如双击)并且如果我不执行任何操作,则必须调用 onAnimationEnd 。但它没有被称为。

我使用了 view.clearAnimation(),但没有用。

有什么工作吗?请帮忙

0 个答案:

没有答案