使用Animator类,您可以简单地调用以下内容来同时播放多个动画:

AnimatorSet animatorSet = new AnimatorSet();
animatorSet.playTogether(animatorsArray);
animatorSet.start();

但是我找不到类似的东西可以与ViewPropertyAnimator一起使用。

(仅供引用。我正在尝试为多个listView项设置动画)

最佳答案

我知道这个问题已有一年多的历史了,但是由于我需要同样的东西,并且想出了一个解决方案,所以我决定与大家分享这个问题:

我创建了一个ObjectAnimator包装器,您可以使用与ViewPropertyAnimator几乎完全相同的方式使用它。而且,您可以使用ObjectAnimator对象,以便可以编写AnimatorSet

包装器可用here

示例(为mTestView设置具有相同参数的动画):

  • ViewPropertyAnimator

  • mTestView.animate().withLayer().alphaBy(0.3f).rotationX(27);
    
  • ViewPropertyObjectAnimator (我的包装器)

  • ObjectAnimator objectAnimator =
        ViewPropertyObjectAnimator.animate(mTestView).withLayer().alphaBy(0.3f).rotationX(27).get();
    

    并且您有一个ObjectAnimator,您可以只是start()或在AnimatorSet内部使用。

    关于android - 同时启动多个ViewPropertyAnimators,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/25217197/

    10-09 07:16