暂停翻译动画Android ObjectAnimator

时间:2012-05-23 12:49:26

标签: android animation

使用ObjectAnimator在文本视图中翻译类似于股票代码的文本。我想按一下按钮暂停自动收报机。但是,尽管在动画对象上调用了cancel()/ end(),但是自动收报机会继续移动直到动画结束。

还尝试在AnimatorListerner#onAnimCancel()中明确清除基础textView上的所有动画。但是,基础textView似乎与任何动画都没有关联。

如果有人可以指出哪些会出错,那会很棒。

以下代码的相关部分。

anim = ObjectAnimator.ofFloat(mTextViewTicker, "TranslationX", 0, -mSomeValue);
anim.addListener(new AnimatorListenerAdapter() {
        @Override
        public void onAnimationCancel(Animator animation) {
            Log.d(TAG,"Animation Pause invoked");
            super.onAnimationCancel(animation);
        }

        public void onAnimationEnd(Animator animation) {
            Log.d(TAG,"Animation Ended");
            ((View)((ObjectAnimator)animation).getTarget()).setTranslationX(anim.getAnimatedFraction());
        }
    });
anim.start();

public void stopScroll() {
   anim.cancel();
}

通过活动中的按钮单击调用stopScroll()。

0 个答案:

没有答案