Android 2.0以后Activity中增加了一个方法overridePendingTransition (int enterAnim, int exitAnim),enterAnim是要进入屏幕的动画,exitAnim是要退出屏幕的动画,需要注意的是这个方法必须放在startActivity()或者finish()后面。
原理:以手机下边为x轴,要实现往左滑动的切换效果,需要让要退出的activity从x轴的0%p移动到x轴的-100%p,让要进入的activity从x轴的100%p移动到0%p。
实现:首先定义2个动画。在res的anim目录下创建xml文件
out_to_left.xml:将fromXDelta属性(动画开始的位置)设为0%p,toXDelta属性(动画结束的位置)设为-100%p,duration(动画的时间)这个可以根据项目需要自行设置
in_from_right.xml:将fromXDelta属性设为100%p,toXDelta属性设为0%p,duration和out_to_left中duration的值相同
然后在activity中startActivity()或者finish()的后面添加overridePendingTransition(R.anim.in_from_right.xml,R.anim.out_to_left)方法。
这样就实现了activity向右滑动的效果。