androidanimation

Android Left to Right slide animation


I have three activities whose launch modes are single instance.
Using onfling(), I swing them left and right.

The problem is when I swipe right to left the slide transition is okay but when I swipe left to right, I get the transition of swiping right to left.

I know why this is happening its because I am always sending new intents. But, now I need to change the animation of sliding left to right.

I know there is a method named overridingTransitionPending(), but I do not know how to define my animation in XML.


Solution

  • Use this xml in res/anim/

    This is for left to right animation:

    <set xmlns:android="http://schemas.android.com/apk/res/android"
         android:shareInterpolator="false">
      <translate android:fromXDelta="-100%" android:toXDelta="0%"
                 android:fromYDelta="0%" android:toYDelta="0%"
                 android:duration="700"/>
    </set>
    

    This is for right to left animation:

    <set xmlns:android="http://schemas.android.com/apk/res/android"
         android:shareInterpolator="false">
      <translate
         android:fromXDelta="0%" android:toXDelta="100%"
         android:fromYDelta="0%" android:toYDelta="0%"
         android:duration="700" />
    </set>
    

    In your coding use intent like for left to right:

    this.overridePendingTransition(R.anim.animation_enter,
                       R.anim.animation_leave);
    

    In your coding use intent like for right to left

    this.overridePendingTransition(R.anim.animation_leave,
                                   R.anim.animation_enter);