Android Activity界面切換添加動畫特效

在Android 2.0之後有了overridePendingTransition() ,其中裏面兩個參數,一個是前一個activity的退出兩一個activity的進入

@Override   
      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);   
      }   

上面的代碼只是閃屏的一部分。

getWindow (). setWindowAnimations ( int );    

這個沒有上個好但是也可以 。

實現淡入淡出的效果

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

由左向右滑入的效果

overridePendingTransition(Android.R.anim.slide_in_left,android.R.anim.slide_out_right);  

實現zoomin和zoomout,即類似iphone的進入和退出時的效果

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

新建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: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>   
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章