Animation einer View

  • Hallo,
    ich habe mich bisher mehr mit iOS Programmierung beschäftigt und nehme jetzt Android mit ins Boot.
    Daher komme ich zum Glück auch einigermaßen zügig vorwärts. Ist vieles ähnlich hat oft nur eine andere Benennung.


    Ich habe nun eine View, die ich auf TouchEvent mit dem Finger über den Screen ziehen kann.
    Beim Loslassen wird die View dann vom Screen Animiert.
    Soweit so gut. Jetzt zu meinem Problem.
    Nach der Animation möchte ich die View wieder im Zentrum des Screens erscheinen lassen.
    Im Moment scheine ich die Animation nur rückgängig zu machen. Das heißt meine View kommt auf dem selben weg wieder zurückgeflogen.


    Kann mir jemand einen Hinweis geben wie ich die View einfach im Zentrum des Screen erscheinen lasse?


    Ich müsste irgendwie anders bei meiner ResetView Funktion vorgehen.


    Soweit der Code:


  • Hi frage an welcher Position war den die Grafik am Anfang? Wenn du Transaktion auf pos 0 machst heißt das nicht das das in der Mitte ist .sondern seine ursprüngliche anfangs pos.
    Der x u y wert ist als offset zu der im layout zu verstehen.

  • Hi frage an welcher Position war den die Grafik am Anfang? Wenn du Transaktion auf pos 0 machst heißt das nicht das das in der Mitte ist .sondern seine ursprüngliche anfangs pos.
    Der x u y wert ist als offset zu der im layout zu verstehen.

    Meine View war ursprünglich auch in der Mitte.
    Daher kommt diese auch wieder zum Zentrum zurück.
    Das ganze passiert aber momentan in einer sichtbaren Bewegung.
    Ich würde die View lieber in kürzester Zeit wieder in der Mitte erscheinen lassen.

  • Die Zeit ist setDuration(1000) in Millisekunden.
    Sjchtbarkeit der Alpha Kanal 0 nicht sichtbar.

    Ok,
    ich glaube setDuration(0) in der resetCardView() Funktion hat den gewünschten Effekt.
    Zumindest sehe ich jetzt keine animierte Bewegung mehr beim Resetten der View.


    Java
    private void resetCardView(){
            View myView = (View) findViewById(R.id.ShoppingListCard1);
            myView.animate().setDuration(0).translationX(0).translationY(0).alpha(1).rotation(0);
        }

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!