2012-03-29 22 views
5

Ho un ImageView che è 250dp sopra il fondo e con l'animazione di traduzione voglio spostarlo a 50dp sopra il fondo.Android Translate Animazione

So come usare un'animazione di traduzione, ma non so quale sarebbe il campo ToYValue.

Il codice wil essere qualcosa di simile:

TranslateAnimation translate = new TranslateAnimation(Animation.RELATIVE_TO_PARENT,0,Animation.RELATIVE_TO_PARENT,0,Animation.ABSOLUTE,250,Animation.ABSOLUTE,50); 
translate.setDuration(1000); 
translate.reset(); 
translate.setFillAfter(true); 
iv.clearAnimation(); 
iv.startAnimation(translate); 

risposta

2

Volete un fromYValue di 0, che significa partenza da dove è attualmente, e un toYValue di 50, il che significa spostare 50 pixel verso il basso. Si noti che questi valori sono espressi in pixel, non in dp. Se deve essere in dp, è tutta un'altra domanda ..

La chiave è nella parola "modifica" dalla documentazione di TranslateAnimation "Modifica in coordinata Y da applicare all'inizio dell'animazione".

http://developer.android.com/reference/android/view/animation/TranslateAnimation.html