AndroidActivity间动画跳转

炒沙作縻终不饱,缕冰文章费工巧。这篇文章主要讲述AndroidActivity间动画跳转相关的知识,希望能为你提供帮助。
            本博文主要介绍activity间动画跳转的问题,在这里讲一下怎么设置全部activity的动画跳转和退出跳转。事实上有些软件已经这样做了。比方我们都比較熟悉的大众点评网。
                以下我们通过一个实例来看一下怎么实现全部activity动画跳转。这里我们最好还是就模仿下大众点评网activity的动画跳转。


                首先在layout/anim新建      anim_enter.xml 

       
[html]  view plaincopy

  1. < ?
    xml  version="1.0"  encoding="UTF-8"?>    
  2. < set  android:interpolator="@android:anim/decelerate_interpolator"   
  3.     xmlns:android="http://schemas.android.com/apk/res/android">    
  4.         < scale  android:duration="@android:integer/config_mediumAnimTime"  android:pivotX="69.99999%"  android:pivotY="100.0%"  android:fromXScale="0.0"  android:toXScale="1.0"  android:fromYScale="0.0"  android:toYScale="1.0"  />    
  5.         < alpha  android:duration="@android:integer/config_mediumAnimTime"  android:fromAlpha="0.0"  android:toAlpha="1.0"  />    
  6. < /set>    
                    anim_exit.xml
[html]  view plaincopy
  1. < ?xml  version="1.0"  encoding="UTF-8"?
    【AndroidActivity间动画跳转】>    
  2. < set  android:interpolator="@android:anim/accelerate_interpolator"   
  3.     xmlns:android="http://schemas.android.com/apk/res/android">    
  4.         < scale  android:duration="@android:integer/config_mediumAnimTime"  android:pivotX="69.99999%"  android:pivotY="100.0%"  android:fromXScale="1.0"  android:toXScale="0.0"  android:fromYScale="1.0"  android:toYScale="0.0"  />    
  5.         < alpha  android:duration="@android:integer/config_mediumAnimTime"  android:fromAlpha="1.0"  android:toAlpha="0.0"  />    
  6. < /set>    
            上面的两个xml分别相应overridePendingTransition(int enterAnim, int exitAnim) 中的进入和退出动画
        接下来定义当还有一个activity退出时的动画效果,back_enter.xml

[html]  view plaincopy
  1. < ?xml  version="1.0"  encoding="UTF-8"?>    
  2. < set  android:interpolator="@android:anim/decelerate_interpolator"   
  3.     xmlns:android="http://schemas.android.com/apk/res/android">    
  4.         < scale  android:duration="@android:integer/config_mediumAnimTime"  android:pivotX="50.0%"  android:pivotY="50.0%"  android:fromXScale="1.5"  android:toXScale="1.0"  android:fromYScale="1.5"  android:toYScale="1.0"  />    
  5.         < alpha  android:duration="@android:integer/config_mediumAnimTime"  android:fromAlpha="0.4"  android:toAlpha="1.0"  />    
  6. < /set>    
          back_exit.xml


[html]  view plaincopy
  1. < ?xml  version="1.0"  encoding="UTF-8"?>    
  2. < set  android:interpolator="@android:anim/decelerate_interpolator"   
  3.     xmlns:android="http://schemas.android.com/apk/res/android">    
  4.         < scale  android:duration="@android:integer/config_mediumAnimTime"  android:pivotX="50.0%"  android:pivotY="50.0%"  android:fromXScale="1.0"  android:toXScale="0.4"  android:fromYScale="1.0"  android:toYScale="0.4"  />    
  5.         < alpha  android:duration="@android:integer/config_mediumAnimTime"  android:fromAlpha="1.0"  android:toAlpha="0.0"  />    
  6. < /set>    

        进入和退出动画效果我们已经定义好了,接下来须要定义样式,曾经我们设置动画效果都是写在activity中,仅仅是对单个activity定义动画。
如今我们对全部的activity定义动画效果。我们最好还是设想一下应该定义一个样式,在全部包裹activity的地方引入样式。这样我们就想到了AndroidManifest.xml里的application 了,他里面生命全部的activity,明确了这些就好办了。


        接下来我们须要在String.xml声明动画的样式
   
[html]  view plaincopy
  1. < style  name="ThemeActivity"  mce_bogus="1">    
  2. < item  name="android:windowAnimationStyle"> @style/AnimationActivity< /item>    
  3. < item  name="android:windowNoTitle"> true< /item>    
  4. lt; /style>    
  5.                
  6.     < style  name="AnimationActivity"  parent="@android:style/Animation.Activity"  mce_bogus="1">    
  7. < item  name="android:activityOpenEnterAnimation"> @anim/anim_enter< /item>    
  8. < item  name="android:activityOpenExitAnimation"> @anim/anim_exit< /item>    
  9.    
  10. < item  name="android:activityCloseEnterAnimation"> @anim/back_enter< /item>    
  11. < item  name="android:activityCloseExitAnimation"> @anim/back_exit< /item>    
  12.    
  13. lt; /style>    
       

  然后在 AndroidManifest.xml里声明样式

[html]  view plaincopy
  1. < application   
  2.               android:icon="@drawable/ic_launcher"  < span  style="color:#FF0000; ">   android:theme="@style/ThemeActivity"< /span>    
  3.               android:label="@string/app_name"  >    
  4.               < activity   
  5.                       android:label="@string/app_name"   
  6.                       android:name=".GlobalAnimationActivity"  >    
  7.                       < intent-filter  >    
  8.                               < action  android:name="android.intent.action.MAIN"  />    
  9.    
  10.                               < category  android:name="android.intent.category.LAUNCHER"  />    
  11.                       < /intent-filter>    
  12.               < /activity>    
  13.               < activity  android:name=".OtherActivity"> < /activity>    
  14.       < /application>    









    推荐阅读