如何使用异步事件触发一系列动画



我有一个活动,其中包含一个处理程序,用于处理异步消息。当我收到一条消息时,我想触发动画;之后,当我收到另一条消息时,我想触发另一个动画,但只有在最后一个动画完成后。

最干净的方法是什么?

可以使用动画侦听器来确定动画何时完成。像这样:

    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) {
        }
    });

最新更新