2013-06-10 15 views
16

Sto provando a ridimensionare le viste a una certa dimensione ma non riesco a capire come funziona la rotazione.Punto di rotazione delle impostazioni Android per l'animazione della scala

Dire che voglio ridimensionare la vista solo verso l'alto. Quale valore dovrebbe avere il "pivoty"? In XML, è una percentuale. Com'è quando si applica il punto di pivot programmaticamente?

Esempio:

ObjectAnimator scaleY = ObjectAnimator.ofFloat(view, "scaleY", scaleSize); 
ObjectAnimator pivotY = ObjectAnimator.ofFloat(view, "pivotY", pivotPoint); 

AnimatorSet set = new AnimatorSet(); 
set.PlayTogether(scaleY, pivotY); 

risposta

44

abbastanza semplice in realtà.

Se si vuole scalare verso l'alto un'opzione chiara è:

view.setPivotY(100); 

e verso il basso:

view.setPivotY(0); 

quindi animate.

+1

Nota: questo funziona solo per api 11+ – yiati

+1

cosa fare per <11 supporto? –

+2

@AmrutBidri usa [nineoldandroids] (http://nineoldandroids.com/) – JMRboosties

2

Usa:

view.setPivotY(view.getMeasuredHeight()); 

Se avete bisogno di animare l'oggetto dal basso.

Problemi correlati