2014-12-02 10 views
5

Mam dwa widoki w różnych układach Chcę przenieść jeden do drugiego. Co jest nie tak z moim kodem? Y animacja jest nieprawidłowa. Pierwszy pogląd znajduje się w układzie fragment, w drugi w pasku stanuWidok animacji z ruchu Android do innego widoku

... 
    int p1[] = new int[2]; 
    int p2[] = new int[2]; 
    viewOne.getLocationInWindow(p1); 
    viewTwo.getLocationInWindow(p2); 


    AnimatorSet animatorSet = new AnimatorSet(); 
    animatorSet 
      .play(ObjectAnimator.ofFloat(expandedImageView, "X", p1[0], p2[0] - p1[0])) 
      .with(ObjectAnimator.ofFloat(expandedImageView, "Y", p1[1], p2[1] - p1[1])) 
      .with(ObjectAnimator.ofFloat(expandedImageView, View.SCALE_X, startScale)) 
      .with(ObjectAnimator.ofFloat(expandedImageView, View.SCALE_Y, startScale)); 
+0

Jak to zagrać źle? – Whitney

+0

@Whitney powinien przejść do rogu ekranu, ale nie rośnie – punksta

+0

proszę zobaczyć moją odpowiedź, jest bezpośrednio związane: https://stackoverflow.com/a/47593484/2606290 – Fer

Odpowiedz

14

Mam inne rozwiązanie dla Ciebie: (MOVE viewOne do viewTwo)

TranslateAnimation animation = new TranslateAnimation(0, viewTwo.getX()-viewOne.getX(),0 , viewTwo.getY()-viewOne.getY()); 
    animation.setRepeatMode(0); 
    animation.setDuration(3000); 
    animation.setFillAfter(true); 
    viewOne.startAnimation(animation); 
+0

Przepraszam, próbowałem tego kodu, ale jest nie działa, jak to zrobić. Mam podgląd obrazu i chcę go przenieść na inny stały widok obrazu , ale w rzeczywistości porusza mój obraz w jakiś sposób po przekątnej stronie do góry –

Powiązane problemy