2016-05-12 21 views
1

Ich versuche eine Liste der Eigenschaften zu finden, die der ObjectAnimator animieren kann und wie er sie animiert.List ob ObjectAnimator animation Eigenschaften

Zum Beispiel würde ich gerne wissen, wie die translationY-Eigenschaft animiert ist. Ist der Wert der zu koordinieren oder ist es die Entfernung?

Antwort

1

ObjectAnimators wird tatsächlich alles mit "set" vor dem Namen animieren. Also im Falle von View gibt es setX(float), setY(float), setZ(float), setTranslationX(float), und so weiter. Wenn Sie eine benutzerdefinierte Ansicht mit eigenen Eigenschaften erstellen, verwenden Sie einfach set____(type) Syntax, um eine ObjectAnimator darauf ohne zusätzliche Arbeit zu verwenden

Im Grunde rufen sie diese Methoden nur bei Wiederholungsintervallen mit Werten auf, die durch TimeInterpolator festgelegt sind, die auf Animator festgelegt ist.

EDIT:

Es gibt eine Menge von Eigenschaften, die auf einer Ansicht animieren können, aber hier ist eine Beschreibung der gebräuchlichsten.

setX/Y(float) -. Dies wird die Ansicht auf den genauen X animiert oder Y-Koordinaten der Mutter View dass sie enthalten ist in den Pixelkoordinaten an (0,0) in der oberen linken Ecke und (getWidth(), height()) an der unteren rechten Ecke beginnen. setY(float) wird die getTop() der Ansicht anpassen und setX(float) wird die getLeft() der Ansicht anpassen.

setTranslationX/Y(float) - Dies animiert die Ansicht auf die relative Position des View, wo der Startpunkt ist. Wenn beispielsweise die getLeft() der Ansicht 50 zurückgibt, wird die Ansicht beim Aufruf setTranslationX(25) um 25 Pixel nach Pixel 75 verschoben. Ebenso wird setTranslationY(25) die Ansicht um 25 Pixel nach unten verschieben. Negative Werte bewegen es nach links bzw. nach oben.

setRotation(float) - Dadurch wird der View um den angegebenen Drehpunkt gedreht, wie von setPivotX(float) und setPivotY(float) definiert. Standardmäßig liegt der Drehpunkt bei Koordinaten (0,0). Sie können es auf die Mitte gesetzt durch so etwas wie dies zu tun:

View viewToAnimate = getViewToAnimate(); 
float width = viewToAnimate.getWidth(); 
float height = viewToAnimate.getHeight(); 
viewToAnimate.setPivotX(width/2); 
viewToAnimate.setPivotY(height/2); 

setScaleX/Y(float) - Dies wird schrumpfen oder eine Ansicht wächst auf dem Drehpunkt basierend, wie oben beschrieben. Ein Wert von "1.0f" macht es normal Größe. Alles, was weniger als "1" ist, wird es verkleinern und etwas mehr als "1" wird es wachsen lassen.

+0

Dies beantwortet leider meine Frage nicht. Was wird "y" tatsächlich tun? Jede Antwort, auf die ich stoße, hinterlässt sehr wichtige Informationen, weshalb ich nach einer echten Dokumentation suche (die es anscheinend nicht gibt). Zum Beispiel nochmal: Wofür wird der Wert tatsächlich verwendet? Die Koordinate, zu der die Ansicht animiert wird, oder die Pixelentfernung? – Jeff

+0

Entschuldigung. Bearbeiten meiner Antwort. – DeeV

+0

Danke. Vielen Dank. Vielen Dank. Vielen Dank – Jeff

Verwandte Themen