-
-
Save kwent/5875749 to your computer and use it in GitHub Desktop.
<?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); | |
} | |
} |
I've found that declaring the entrance and exit animations as a style in your styles.xml file work well if you want to get every activity to have the same animations and want to avoid weird side effects with the home button.
This is from a styles.xml in a stack overflow post found here http://stackoverflow.com/questions/12370793/activity-exit-animations-dont-work-as-expected-on-android-4-0:
<style name="down_up_theme" parent="Theme.rtlfr">
<item name="android:windowAnimationStyle">@style/down_up_animation</item>
</style>
<style name="down_up_animation" parent="@android:style/Animation.Activity">
<item name="android:activityOpenEnterAnimation">@anim/slide_in_top</item>
<item name="android:activityOpenExitAnimation">@anim/hold</item>
<item name="android:activityCloseEnterAnimation">@anim/hold</item>
<item name="android:activityCloseExitAnimation">@anim/slide_out_bottom</item>
</style>
hi this is not work samsung Grand 2 kitkat device
@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);
}
The exit animation doesn't execute in my application, any idea what could cause this?
I have 4.4.4 on Nexus 5
@kwent Nice work! Is it okay to call overridePendingTransition
from onActivityCreated
and onActivityPaused
of Application.ActivityLifecycleCallbacks
?
I'd recommend calling overridePendingTransition
on startActivity
and onBackPressed
(assuming you've wire up your home buttons to onBackPressed
)
What to do to prevent exit animation on Home button press (going to your home screen)?