源码链接:https://pan.baidu.com/s/1jAKMNUuCdWVxUm2BUCzL2g
添加动画anim
新activity进入方式
默认是右往左进入动画
1、下往上推进入动画——100与-100互换即可——上往下推进入动画
in:
<?xml version="1.0" encoding="utf-8"?><set xmlns:android="http://schemas.android.com/apk/res/android"><translateandroid:duration="700"android:fromYDelta="100%p"android:toYDelta="0" /><alphaandroid:duration="700"android:fromAlpha="0.0"android:toAlpha="1.0" /> </set>
out:
<?xml version="1.0" encoding="utf-8"?><set xmlns:android="http://schemas.android.com/apk/res/android"><translateandroid:duration="700"android:fromYDelta="0"android:toYDelta="-100%p" /><alphaandroid:duration="700"android:fromAlpha="1.0"android:toAlpha="0.0" /> </set>
2、左往右进入动画
in:
<?xml version="1.0" encoding="utf-8"?> <set xmlns:android="http://schemas.android.com/apk/res/android"><translateandroid:duration="2000"android:fromXDelta="-100%p"android:toXDelta="0" /> </set>
out:
<?xml version="1.0" encoding="utf-8"?> <set xmlns:android="http://schemas.android.com/apk/res/android"><translateandroid:duration="2000"android:fromXDelta="0"android:toXDelta="100%p" /> </set>
3、透明淡出,中间缩放进入动画
in:
<?xml version="1.0" encoding="utf-8"?><!-- android:duration="@android:integer/config_mediumAnimTime" --> <set xmlns:android="http://schemas.android.com/apk/res/android"><scaleandroid:duration="1000"android:fillAfter="false"android:fromXScale="0.0"android:fromYScale="0.0"android:interpolator="@android:anim/accelerate_decelerate_interpolator"android:pivotX="50%"android:pivotY="50%"android:toXScale="1"android:toYScale="1" /> </set>
out:
<?xml version="1.0" encoding="utf-8"?><!-- android:duration="@android:integer/config_mediumAnimTime" --> <set xmlns:android="http://schemas.android.com/apk/res/android"><alphaandroid:duration="1000"android:fromAlpha="1.0"android:toAlpha="0" /></set>
4、透明淡出,左上角放大进入动画
in:
<?xml version="1.0" encoding="utf-8"?><!-- android:duration="@android:integer/config_mediumAnimTime" --> <set xmlns:android="http://schemas.android.com/apk/res/android"android:shareInterpolator="false"><scaleandroid:duration="1000"android:fromXScale="0.0"android:fromYScale="0.0"android:interpolator="@android:anim/decelerate_interpolator"android:pivotX="0"android:pivotY="0"android:repeatCount="0"android:startOffset="0"android:toXScale="1.0"android:toYScale="1.0"></scale></set>
out:......
5、组合动画,旋转,缩放,移动
<?xml version="1.0" encoding="utf-8"?><!-- android:duration="@android:integer/config_mediumAnimTime" --> <set xmlns:android="http://schemas.android.com/apk/res/android"android:shareInterpolator="false"><scaleandroid:duration="2000"android:fromXScale="0.0"android:fromYScale="0.0"android:interpolator="@android:anim/decelerate_interpolator"android:pivotX="50%"android:pivotY="50%"android:toXScale="1.0"android:toYScale="1.0"></scale><translateandroid:duration="2000"android:fromXDelta="120"android:fromYDelta="30"android:interpolator="@android:anim/accelerate_decelerate_interpolator"android:toXDelta="30"android:toYDelta="250" /><rotateandroid:duration="2000"android:fromDegrees="0"android:interpolator="@android:anim/accelerate_decelerate_interpolator"android:pivotX="50%"android:pivotY="50%"android:toDegrees="+355" /> </set>
6、左上角退出,外围缩放进入动画
in:
<?xml version="1.0" encoding="utf-8"?> <set xmlns:android="http://schemas.android.com/apk/res/android"android:interpolator="@android:anim/decelerate_interpolator"><alphaandroid:duration="1000"android:fromAlpha="0"android:toAlpha="1.0" /><scaleandroid:duration="1000"android:fromXScale="2.0"android:fromYScale="2.0"android:pivotX="50%p"android:pivotY="50%p"android:toXScale="1.0"android:toYScale="1.0" /> </set>
out:
<?xml version="1.0" encoding="utf-8"?> <set xmlns:android="http://schemas.android.com/apk/res/android"android:interpolator="@android:anim/decelerate_interpolator"android:zAdjustment="top"><scaleandroid:duration="2000"android:fromXScale="1.0"android:fromYScale="1.0"android:pivotX="0"android:pivotY="0"android:toXScale="0"android:toYScale="0" /><alphaandroid:duration="2000"android:fromAlpha="1.0"android:toAlpha="0" /> </set>
activity实现跳转动画代码
private Context mContext;
mContext = MainActivity.this;
startView.setOnClickListener(new View.OnClickListener() {@Overridepublic void onClick(View v) {Intent intent = new Intent(mContext, MyTwoActivity.class);mContext.startActivity(intent);((Activity)mContext).overridePendingTransition(R.anim.zoom_enter,R.anim.zoom_exit);}
});