android的動畫插入器

android:interpolator


Interpolator 被用來修飾動畫效果,定義動畫的變化率,可以使存在的動畫效果accelerated(加速)
,decelerated(減速),repeated(重複),bounced(彈跳)等。


 AccelerateDecelerateInterpolator 在動畫開始與結束的地方速率改變比較慢,在中間的時候加速


  AccelerateInterpolator  在動畫開始的地方速率改變比較慢,然後開始加速


  AnticipateInterpolator 開始的時候向後然後向前甩


  AnticipateOvershootInterpolator 開始的時候向後然後向前甩一定值後返回最後的值


  BounceInterpolator   動畫結束的時候彈起


  CycleInterpolator 動畫循環播放特定的次數,速率改變沿着正弦曲線


  DecelerateInterpolator 在動畫開始的地方快然後慢


  LinearInterpolator   以常量速率改變


  OvershootInterpolator    向前甩一定值後再回到原來位置


需要注意的是:

在插入器寫完之後需要在動畫裏面進行調用

1、這是動畫

<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android"
        android:interpolator="@anim/oi" >     //在這個地方進行引用

        <translate
            android:duration="2000"
            android:fromXDelta="0"
            android:toXDelta="50" />

    </set>

2、這個插入器
<?xml version="1.0" encoding="utf-8"?>
<anticipateOvershootInterpolator xmlns:android="http://schemas.android.com/apk/res/android"
    android:tension="5"
    android:extraTension="10">

</anticipateOvershootInterpolator>
//這個插入器有很多類型,都在上面了,自己看去










LayoutAnimationController用於爲一個layout裏面的控件,或者是一個ViewGroup裏面的控件設置動畫效果,可以在XML文件中設置,亦可以在Java代碼中設置。


一種直接在XML文件中設置


1.  在res/anim文件夾下新建一個XML文件,名爲list_anim_layout.xml,




[java] view plain copy
<layoutAnimation xmlns:android="http://schemas.android.com/apk/res/android"  
        android:delay="30%"  
        android:animationOrder="reverse"  
        android:animation="@anim/slide_right" />  
android:delay  子類動畫時間間隔 (延遲)   70% 也可以是一個浮點數 如“1.2”等
android:animationOrder="random"   子類的顯示方式 random表示隨機
android:animationOrder 的取值有 
normal 0    默認
reverse 1   倒序
random 2   隨機
android:animation="@anim/slide_right" 表示孩子顯示時的具體動畫是什麼


說明:其中delay的單位爲秒;animation爲設置動畫的文件。animationOrder爲進入方式
2.  在res/anim文件夾下新建一個XML文件,名爲slide_right,即上面用到的文件。




[html] view plain copy
    <set xmlns:android="http://schemas.android.com/apk/res/android"   
        android:interpolator="@android:anim/accelerate_interpolator">  
    <translate android:fromXDelta="-100%p" android:toXDelta="0"  
            android:duration="@android:integer/config_shortAnimTime" />  
</set>  
 顯示的效果爲ListView第一次出現的時候爲 item隨機出現 每個Item都是從左不可見(-100%p)的區域向右滑動到顯示的地方
3.  在主佈局文件中爲控件添加如下配置:


android:layoutAnimation="@anim/list_anim_layout",即第一步的佈局文件。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章