Verschieben Sie ImageView mit der Translate-Animation von der aktuellen Position zur festen Position

7

Ich möchte meine Bildansicht von der aktuellen Position auf eine bestimmte Position auf dem Bildschirm verschieben, indem ich die Translationsanimation verwende. Außerdem möchte ich wissen, wie translate animation funktioniert und welche Parameter genau akzeptiert werden?

Mein Code ist ...

%Vor%

Vielen Dank im Voraus.

    
Nikhil Sathawara 18.09.2013, 05:45
quelle

3 Antworten

18

Translate Animation steuert die Position und Position eines Layouts oder einer Schaltfläche oder einer Ansicht, auf die eine Animation angewendet wird. Es kann ein Objekt entweder in x-Richtung oder in y-Richtung verschieben.

Syntax:

%Vor%

fromXposition - x Koordinate, ab der die Animation starten soll

toXPosition - x-Koordinate, bei der die Animation enden würde

fromYPosition - y-Koordinate, ab der die Animation beginnen soll.

toYPosition - y-Koordinate, bei der die Animation enden würde.

1) Wenn wir nur in X direction übersetzen wollen, setzen wir von Position und auf Position als Null.

2) Wenn wir nur in Y direction übersetzen möchten, setzen wir fromXPosition und toXPosition auf 0.

Es gibt eine andere Methode, mit der wir einen anim-Ordner im res-Ordner erstellen. In diesem Ordner fügen wir unsere Animation xml hinzu. Wir verwenden ein translate-Tag, in dem wir die Attributwerte angeben.

In der folgenden XML-Datei

android:duration definiert den Zeitpunkt der Ausführung der Animation

android:repeatCount gibt die Nummer an. von den Zeiten sollte die Animation wiederholt werden,

android:fromYDelta legt die y-Koordinate fest, von der aus die Animation starten soll

android:toYDelta definiert die y-Koordinate, bei der die Animation enden würde.

line_translate.xml

%Vor%

Code:

%Vor%

Translate Animation kann die visuelle Erscheinung eines Objekts verändern, aber sie können die Objekte selbst nicht verändern. Das heißt, wenn Sie eine Translationsanimation auf eine Ansicht anwenden, wird sie an eine neue Position verschoben, aber ihre Klickereignisse werden nicht ausgelöst, während die Klickereignisse immer noch an der vorherigen Position ausgelöst werden. Dies geschieht, weil sich die Ansicht immer noch an der ursprünglichen Position befindet.

Um dies zu umgehen, können wir ObjectAnimation verwenden, das ein Objekt tatsächlich bewegt. Objektanimation ist die einzige Animation, die ein Objekt tatsächlich bewegt. Sie können eine Übersetzungs-Animation mit ObjectAnimator erstellen.

%Vor%

view - dies ist die Ansicht, auf die die Animation angewendet werden soll

propertyName - Die Eigenschaft, die animiert wird.

FromX, toX -Ein Satz von Werten, zwischen denen die Animation im Laufe der Zeit animiert wird.

Hoffe, das wird dir ein schönes Verständnis geben.

    
GrIsHu 18.09.2013 06:44
quelle
6

Sie müssen Ihre Ansicht nur um eine Position an eine andere Position verschieben. Also müssen Sie den folgenden Code verwenden, um Ihre Aufgabe zu erfüllen.

%Vor%     
duggu 18.09.2015 06:47
quelle
2

Sie könnten NineOldAndroids verwenden. Es gibt Beispiele für Übersetzungen von Animationen.

    
Sivakumar S 18.09.2013 05:50
quelle

Tags und Links