Skip to content

Instantly share code, notes, and snippets.

@kwent
Created June 27, 2013 11:28
Show Gist options
  • Save kwent/5875749 to your computer and use it in GitHub Desktop.
Save kwent/5875749 to your computer and use it in GitHub Desktop.
Activity transition animations like the Vine Android application. - See more at: http://blog.quent.in/index.php/2013/06/activity-transition-animations-like-the-vine-android-application/
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
<scale android:fromXScale="100%p"
android:toXScale="80%p"
android:fromYScale="100%p"
android:toYScale="80%p"
android:pivotX="50%p"
android:pivotY="50%p"
android:duration="@android:integer/config_mediumAnimTime" />
<alpha android:fromAlpha="1"
android:toAlpha="0.5"
android:duration="@android:integer/config_mediumAnimTime"/>
</set>
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
<translate android:fromXDelta="0%"
android:toXDelta="100%"
android:duration="@android:integer/config_mediumAnimTime" />
</set>
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
<scale android:fromXScale="80%p"
android:toXScale="100%p"
android:fromYScale="80%p"
android:toYScale="100%p"
android:pivotX="50%p"
android:pivotY="50%p"
android:duration="@android:integer/config_mediumAnimTime" />
<alpha android:fromAlpha="0.5"
android:toAlpha="1.0"
android:duration="@android:integer/config_mediumAnimTime"/>
</set>
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
<translate android:fromXDelta="100%"
android:toXDelta="0%"
android:duration="@android:integer/config_mediumAnimTime" />
</set>
public class AnimatedActivity extends Activity
{
@Override
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
//opening transition animations
overridePendingTransition(R.anim.activity_open_translate,R.anim.activity_close_scale);
}
@Override
protected void onPause()
{
super.onPause();
//closing transition animations
overridePendingTransition(R.anim.activity_open_scale,R.anim.activity_close_translate);
}
}
@Gopinathp
Copy link

@bgorkowy You can move the one line of code from onPause method to finish() method.

public void finish() {
super.finish();
overridePendingTransition(R.anim.activity_open_scale,R.anim.activity_close_translate);
}

@RobbySmet
Copy link

The exit animation doesn't execute in my application, any idea what could cause this?
I have 4.4.4 on Nexus 5

@shercoder
Copy link

@kwent Nice work! Is it okay to call overridePendingTransition from onActivityCreated and onActivityPaused of Application.ActivityLifecycleCallbacks?

@emitchel
Copy link

I'd recommend calling overridePendingTransition on startActivity and onBackPressed (assuming you've wire up your home buttons to onBackPressed)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment