1、overridePendingTransition(args1, args2)
它需要两个参数,args1 前一个 Activity 的退出效果,args2 是后一个 Activity 的进入效果。 使用方法:
Intent intent = new Intent(this, clzTo);this.startActivity(intent);this.finish();overridePendingTransition(R.anim.fade_in, R.anim.fade_out);
2、setWindowAnimations(args)
这可也可以,但没有上一个好。使用方法:
getWindow().setWindowAnimations(R.style.PopupAnimation);
几种常用的切换效果
1、淡入淡出
overridePendingTransition(android.R.anim.fade_in, android.R.anim.fade_out);
2、由左向右滑入
overridePendingTransition(android.R.anim.slide_in_left, android.R.anim.slide_out_right);
3、zoomin 和 zoomout
即类似 iphone 的进入和退出时的效果。
新建 zoomin.xml 文件:
<?xml version="1.0" encoding="utf-8"?><set xmlns:android="http://schemas.android.com/apk/res/android"android:interpolator="@android:anim/decelerate_interpolator"><scale android:fromXScale="2.0"android:toXScale="1.0"android:fromYScale="2.0"android:toYScale="1.0"android:pivotX="50%p"android:pivotY="50%p"android:duration="@android:integer/config_mediumAnimTime" /></set>
新建 zoomout.xml 文件:
<?xml version="1.0" encoding="utf-8"?><set xmlns:android="http://schemas.android.com/apk/res/android"android:interpolator="@android:anim/decelerate_interpolator"android:adjustment="top"><scale android:fromXScale="1.0"android:toXScale=".5"android:fromYScale="1.0"android:toYScale=".5"android:pivotX="50%p"android:pivotY="50%p"android:duration="@android:integer/config_mediumAnimTime" /><alpha Android:fromAlpha="1.0"android:toAlpha="0"android:duration="@android:integer/config_mediumAnimTime" /></set>
Java调用:
overridePendingTransition(R.anim.zoomin, R.anim.zoomout);
