如何使用异步事件触发动画序列?

时间:2017-11-14 17:41:00

标签: java android asynchronous android-animation

我有一个包含处理程序的活动,该处理程序处理异步消息。当我收到消息时,我想触发一个动画;之后,当我收到另一条消息时,我想触发另一个动画,但只有在最后一个动画结束后才会触发。

最干净的方法是什么?

1 个答案:

答案 0 :(得分:0)

您可以使用动画侦听器来确定动画何时结束。像这样:

    Animation a = AnimationUtils.loadAnimation(this.getContext(), R.anim.animation);

    a.setAnimationListener(new Animation.AnimationListener() {
        @Override
        public void onAnimationStart(Animation animation) {

        }

        @Override
        public void onAnimationEnd(Animation animation) {
            if(receivedMessage == true){
                startNextAnimation();
            }
        }

        @Override
        public void onAnimationRepeat(Animation animation) {

        }
    });