Starten Sie mehrere ViewPropertyAnimators zur gleichen Zeit
Mit der Animator-Klasse rufen Sie einfach an so etwas wie die folgenden Schritte aus, um mehrere Animationen gleichzeitig:
AnimatorSet animatorSet = new AnimatorSet();
animatorSet.playTogether(animatorsArray);
animatorSet.start();
Aber ich kann nicht finden, etwas ähnliches, das funktioniert mit ViewPropertyAnimator.
(FYI. Ich versuche zu animieren, mehrere listView-Elemente)
- Also warum Sie nicht nutzen Animator-Klasse?!
- hast du eine Möglichkeit, dies zu tun? Ich überlege, das gleiche zu tun und die einzige Möglichkeit die ich denken kann, so weit ist das hinzufügen einer withStartAction und innerhalb der Ablaufenden, zum kick-off einer anderen animation.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ich weiß, die Frage ist mehr als ein Jahr alt, aber da brauchte ich die gleiche Sache und ich kam mit einer Lösung, die ich beschlossen, es zu teilen:
Habe ich eine
ObjectAnimator
- wrapper, die Sie verwenden können, in fast genau der gleichen Weise, als würden SieViewPropertyAnimator
. Und noch, Sie können dieObjectAnimator
Objekt, so dass Sie können schreiben Sie IhreAnimatorSet
.Wrapper ist verfügbar hier.
Beispiel (einrichten einer animation, in der die gleichen Parameter für eine
mTestView
):ViewPropertyAnimator
ViewPropertyObjectAnimator
(mein wrapper)haben Sie eine
ObjectAnimator
die können Sie entweder nurstart()
oder die Verwendung innerhalbAnimatorSet
.ObjectAnimator
. Ich glaube nicht, betrachten Sie es als Ersatz fürViewPropertyAnimator
. Vielen Dank für die Klarstellung @CarloConserva!Ich würde vorschlagen, mit withStartAction wie ich oben erwähnt habe.
Weiter Lesen ViewPropertyAnimator Seite in Android docs
Ich bin zu verwenden, es selbst und es sieht aus wie es funktioniert.
Fügte ich alle meine animation-code in ein Runnable, Hinzugefügt mehrere Runnables in eine ArrayList und wenn Sie fertig sind, ich schlang Sie mit der ArrayList und als run() auf alle von Ihnen.