0

Android 两Activity之间动画效果———翻页效果

用Android rotate动画实现翻页效果,效果如图:

要实现上面动画,首先搞明白rotate动画原理;

(1)Degrees坐标:

                      0度(360度)

  270度 90度  顺时针旋转

                        180

(2)rotate 关键属性

        fromDegrees 开始旋转时角度      toDegrees 结束时的角度

        pivotX,pivotY 旋转时的中心点  他们范围是 0—100%p   (0,0)代表左上角,(100%p, 100%p)右下角

        duration 动画持续时间 毫秒为单位

知道了这两点就可以实现了   在res新建 anim 文件夹

   新建 离开Activity时的xml

  1. <?xml version=“1.0” encoding=“utf-8”?>  
  2. <set xmlns:android=“http://schemas.android.com/apk/res/android” >  
  3.   
  4.     <rotate  
  5.         android:duration=“500”  
  6.         android:fromDegrees=“0”  
  7.         android:pivotX=“0”  
  8.         android:pivotY=“0”  
  9.         android:toDegrees=“0” />  
  10.   
  11. </set>  

新建 进入Activity时的xml

  1. <?xml version=“1.0” encoding=“utf-8”?>  
  2. <set xmlns:android=“http://schemas.android.com/apk/res/android” >  
  3.   
  4.     <rotate  
  5.         android:duration=“500”  
  6.         android:fromDegrees=“90”  
  7.         android:pivotX=“100%p”  
  8.         android:pivotY=“100%p”  
  9.         android:toDegrees=“0” />  
  10.   
  11. </set>  

最后就是代码调用了

  1. Intent intent = new Intent(ActivityAnimationDemo.this, activtyanimationdemo2.class);  
  2. startActivity(intent);  
  3. overridePendingTransition(R.anim.rotate_left, R.anim.rotate_right);  

解释一下应放入的参数

  1. overridePendingTransition(进入时的动画,离开时的动画) 

 

源码下载(为了方便,把移动和 旋转动画代码写一块了)

天边的星星