2016-08-02 40 views
0

Ich habe eine ImageView, die ich mit Animation um 180 Grad mit OnClickListener rotiere. Wenn es sehr schnell ausgelöst wird (bevor eine Animation beendet wird), wird die Animation verworfen und verlässt die Ansicht in einem seltsamen Winkel (zum Beispiel um 47 Grad gegenüber dem Grundzustand gedreht).Animierte Bildansicht abgebrochen, wenn sie vor einem Zyklus erneut gestartet wird

Wie kann man die nächste Animation verhindern, bevor die aktuelle beendet wird oder wie man anders damit umgeht?

bankExpandArrow.setOnClickListener(new View.OnClickListener() { 
      @Override 
      public void onClick(View v) { 
       if (totalText.getVisibility() == View.GONE) { 
        totalText.setVisibility(View.VISIBLE);; 
        bankExpandArrow.animate().rotationBy(180f).start(); 
       } 
       else { 
        totalText.setVisibility(View.GONE); 
        bankExpandArrow.animate().rotationBy(180f).start(); 
       } 
      } 
     }); 

Antwort

1

Versuchen Sie es mit rotation statt rotationBy

+0

Das heißt, daß Antwort akzeptieren gearbeitet, wenn es möglich ist, –