0

即使片段的onPause火在运行AnimationAnimationSet没有停止并继续在背景上制作动画。有没有办法在其他事件中onPause或通过其他事件暂停动画,然后通过onResume或其他相应事件恢复动画?也许通过将动画包装到一个单独的线程然后挂起该线程,这可能吗?

4

2 回答 2

0

您应该查看的cancel()方法Animation。只需在您的onPause(). 您将无法从中断的地方恢复它,但您可以重新启动它或在返回时不显示它。

于 2013-10-18T08:37:52.317 回答
0

您可以使用以下命令跟踪视图的当前位置AnimatorUpdateListener

animation.addUpdateListener(new AnimatorUpdateListener(){
    @Override
    public void onAnimationUpdate(ValueAnimator animation) {
        //get animated value using
        animation.getAnimatedValue();
        animation.getCurrentPlayTime();

        //then handle the click listener
    }

});

如果您将当前动画值和时间戳保存到变量中,然后将它们传递给 中的捆绑包onSavedInstanceState,您可以取消中的动画onPause,然后在保存的值中恢复它onRestoreInstanceState

于 2013-10-20T15:33:35.747 回答