开发项目中总是会用到一些很炫丽的activity界面之间的动画效果或是Fragment界面之间的动画效果,其实,在中已经可以很简单的实现之间的动画切换效果。在后调用就可以实现之间的动画,其中是下一个的动画效果,是当前退出的动画效果,先看看中的执行吧:




public void onCreate(Bundle savedInstanceState) {     
        super.onCreate(savedInstanceState);      
        setContentView(R.layout.SplashScreen);     
        new Handler().postDelayed(new Runnable() {     
                @Override     
                public void run() {     
                        Intent mainIntent = new Intent(SplashScreen.this, AndroidNews.class);     
                        SplashScreen.this.startActivity(mainIntent);     
                        SplashScreen.this.finish();     
                        overridePendingTransition(R.anim.mainfadein,     
                                R.anim.splashfadeout);     
                }     
        }, 3000);     
}



实现淡入淡出的效果:



overridePendingTransition(Android.R.anim.fade_in,android.R.anim.fade_out);



由左向右滑动的效果:





overridePendingTransition(Android.R.anim.slide_in_left,android.R.anim.slide_out_right);
还有一种简单的写法,当然,效果没有上面的好:




getWindow (). setWindowAnimations ( int );



实现animin和animout,即类似iphone的进入和退出时的效果:





overridePendingTransition(R.anim.zoomin, R.anim.zoomout);





下面我们来看看animin.xml文件里的写法:



<?xml version="1.0" encoding="utf-8"?>    
<set xmlns:Android="http:///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>




下面我们来看看animout.xml文件里的写法:




<?xml version="1.0" encoding="utf-8"?>    
<set xmlns:Android="http:///apk/res/android"    
        Android:interpolator="@android:anim/decelerate_interpolator"    
        Android:zAdjustment="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>





     在我的CSDN中都是有介绍的,以后有更炫丽的动画效果的话,我会及时的更新的,希望对大家有所帮助,下面我们直接来看看XML中的动画写法(创建anim并创建相应的xml):


Android activity切换activity activity切换动画_java


 1.透明效果,渐入浅出

----------------in----------


1. <?xml version="1.0" encoding="utf-8"?>  
2. <set xmlns:android="http:///apk/res/android">  
3. <alpha  xmlns:android="http:///apk/res/android"   
4. "3000"  
5. "0.0"  
6. "1.0"  
7. "reverse"  
8.         >  
9.           
10.     </alpha>  
11. </set>



---------------out---------


 

1. <?xml version="1.0" encoding="utf-8"?>  
2. <set xmlns:android="http:///apk/res/android">  
3. "http:///apk/res/android"   
4. "3000"  
5. "1.0"  
6. "0.0"  
7. "reverse"  
8.         >  
9.           
10.     </alpha>  
11. </set>

2.左右推动 透明渐变带黑色区域


--------in-------------


 

1. <?xml version="1.0" encoding="utf-8"?>  
2. <set xmlns:android="http:///apk/res/android" >  
3.   
4.     <translate  
5. "300"  
6. "100%p"  
7. "0" />  
8.   
9.     <alpha  
10. "300"  
11. "0.0"  
12. "1.0" />  
13.   
14. </set>




 

1. <?xml version="1.0" encoding="utf-8"?>  
2. <set xmlns:android="http:///apk/res/android" >  
3.   
4.     <translate  
5. "300"  
6. "0"  
7. "-100%p" />  
8.   
9.     <alpha  
10. "300"  
11. "1.0"  
12. "0.0" />  
13.   
14. </set>

    3.左右推动 透明渐变无黑色区域



----------in_from_right------------



<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http:///apk/res/android">
    <translate
        android:duration="260"
        android:fromXDelta="100%p"
        android:toXDelta="0%p"></translate>
</set>


----------out_from_left------------





<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http:///apk/res/android">
    <translate
        android:duration="260"
        android:fromXDelta="0%p"
        android:toXDelta="-100%p"></translate>
</set>




4.由上往下推动 透明渐变



---------in---------------


 

1. <?xml version="1.0" encoding="utf-8"?>  
2. <set xmlns:android="http:///apk/res/android" >  
3.   
4.     <translate  
5. "500"  
6. "100.0%p" />  
7.   
8.     <alpha  
9. "500"  
10. "0.5"  
11. "@android:anim/accelerate_interpolator"  
12. "1.0" />  
13.   
14. </set>

----------out--------



 

1. <?xml version="1.0" encoding="utf-8"?>  
2. <set xmlns:android="http:///apk/res/android" >  
3.   
4.     <translate  
5. "500"  
6. "100.0%p" />  
7.   
8.     <alpha  
9. "500"  
10. "0.5"  
11. "@android:anim/accelerate_interpolator"  
12. "1.0" />  
13.   
14. </set>


   5.从左至右的带弹性的动画



(1)用200毫秒时间先向后移动2%p的位置 (2) 延迟200毫秒后从2%p位置向前移动到-100%p位置。 然后第2个Activity从延迟200毫秒然后从102%p位置移动到0%p位置。



  ----------new_left----------



<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http:///apk/res/android"
    android:shareInterpolator="false" >
 
    <translate
        android:duration="200"
        android:fromXDelta="0%p"
        android:interpolator="@android:anim/accelerate_decelerate_interpolator"
        android:toXDelta="2%p" />
    <translate
        android:duration="1000"
        android:fromXDelta="2%p"
        android:interpolator="@android:anim/accelerate_interpolator"
        android:startOffset="200"
        android:toXDelta="-100%p" />
 
</set>



----------

new_light----------



<?xml version="1.0" encoding="utf-8"?>
<translate xmlns:android="http:///apk/res/android"
    android:duration="1000"
    android:fromXDelta="102%p"
    android:interpolator="@android:anim/anticipate_overshoot_interpolator"
    android:startOffset="200"
    android:toXDelta="0%p" />





6.退出动画



--------从屏幕上方退出-------



 

1. <?  
2.   
3. xmlversion="1.0"encoding="utf-8"?>  <translatexmlns:android="http:///apk/res/android"   
4.   
5. android:interpolator="@android:anim/accelerate_interpolator" android:fromYDelta="0%p" android:toYDelta="-100%p" android:duration="1000"> </translate>


--------从屏幕下方进入---------





 

1. <?xmlversion="1.0"encoding="utf-8"?>  <translatexmlns:android="http:///apk/res/android" android:interpolator="@android:anim/accelerate_interpolator" android:fromYDelta="100%p" android:toYDelta="0%p" android:duration="1000"> </translate>  
2.