2

こんにちは、一連のアニメーションを実行しようとしていますが、惨めに失敗しています。4.0 のときは問題なく動作しましたが、nineoldandroid を使用して 2.2 と 2.3 のサポートを追加しました。うまくいきましたが、AnimatorListenerのメソッドonAnimationEndが2回呼び出されます。

これは私がアニメーションに使用しているコードです:

animate(horizontalView)
   .translationX(xDelta)
   .setDuration(2000)
   .setListener(new Animator.AnimatorListener() {
      //listener implementation onAnimationEnd
      @Override
      public void onAnimationEnd(Animator animator) {
         animate(droppingView)
              .translationY(yDelta)
              .setDuration(2000)
              .setListener(null)
              .start();
      }
   }).start();

最初のアニメーションはリスナーを 2 回起動し、2 番目のアニメーションは 3 回起動します。これは、私がテストした 2.2 と 2.3 でのみ発生します。

4

1 に答える 1