android自定義animation

 在res目錄下建立文件夾anim,在文件夾中建立xml文件android

<?xml version="1.0" encoding="UTF-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">

    <!-- 
        Tween Animation:經過對場景裏的對象不斷作圖像變換(平移、縮放、旋轉)產生動畫效
        
        Alpha:漸變透明度動畫效果
        Scale:漸變尺寸伸縮動畫效果
        Translate:畫面轉換位置移動動畫效果
        Rotate:畫面旋轉動畫效果
        
        Tween Animation 通用屬性[類型]    功能    
        Duration[long]    屬性爲動畫持續時間    時間以毫秒爲單位
        fillAfter [boolean]    當設置爲true ,該動畫轉化在動畫結束後被應用
        fillBefore[boolean]    當設置爲true ,該動畫轉化在動畫開始前被應用
            
        interpolator    指定一個動畫的插入器    有一些常見的插入器
        accelerate_decelerate_interpolator
        加速-減速 動畫插入器
        accelerate_interpolator
        加速-動畫插入器
        decelerate_interpolator
        減速- 動畫插入器
        其餘的屬於特定的動畫效果
        repeatCount[int]    動畫的重複次數    
        RepeatMode[int]    定義重複的行爲    1:從新開始  2:plays backward
        startOffset[long]    動畫之間的時間間隔,從上次動畫停多少時間開始執行下個動畫
        zAdjustment[int]    定義動畫的Z Order的改變    0:保持Z Order不變
        1:保持在最上層
        -1:保持在最下層
    
    
     -->
    <!--
        透明控制動畫 
     -->
    <alpha
        android:fromAlpha="0.1"    
        android:toAlpha="1.0"
        android:duration="3000"
    />
        
    <!-- 尺寸伸縮動畫效果 scale
    
    
        屬性:interpolator 指定一個動畫的插入器

        有三種動畫插入器:
          accelerate_decelerate_interpolator  加速-減速 動畫插入器
          accelerate_interpolator        加速-動畫插入器
          decelerate_interpolator        減速- 動畫插入器

        其餘的屬於特定的動畫效果

          fromXScale 屬性爲動畫起始時 X座標上的伸縮尺寸    
          toXScale   屬性爲動畫結束時 X座標上的伸縮尺寸     

          fromYScale 屬性爲動畫起始時Y座標上的伸縮尺寸    
          toYScale   屬性爲動畫結束時Y座標上的伸縮尺寸    

        說明:
                 以上四種屬性值    
                    0.0表示收縮到沒有 
                    1.0表示正常無伸縮     
                    值小於1.0表示收縮  
                    值大於1.0表示放大
                    
            pivotX     屬性爲動畫相對於物件的X座標的開始位置
            pivotY     屬性爲動畫相對於物件的Y座標的開始位置
            說明:
                    以上兩個屬性值 從0%-100%中取值
                    50%爲物件的X或Y方向座標上的中點位置
        長整型值:
            duration  屬性爲動畫持續時間
            說明:   時間以毫秒爲單位

        布爾型值:
            fillAfter 屬性 當設置爲true ,該動畫轉化在動畫結束後被應用
    -->
    <scale
        android:interpolator="@android:anim/accelerate_decelerate_interpolator"
        android:repeatCount="1"
        
        android:fromXScale="0.5"
        android:fromYScale="0.5"
        android:toXScale="1.4"        
        android:toYScale="1.4"
        android:pivotX="50%"
        android:pivotY="50%"
        android:fillAfter="false"
        android:duration="3000"
        
    />
    <!-- 
        畫面轉換位置移動動畫效果 translate
    
        fromXDelta toXDelta    爲動畫、結束起始時 X座標上的位置    
        fromYDelta toYDelta    爲動畫、結束起始時 Y座標上的位置
     -->
    
    <translate
        android:repeatCount="2"
        android:fromXDelta="-30"
        android:fromYDelta="-30"
        android:toXDelta="-80"        
        android:toYDelta="200"
        android:duration="3000"
    />
    <!-- 
        畫面轉移旋轉動畫效果 rotate
        
        fromDegrees    爲動畫起始時物件的角度    說明
            當角度爲負數——表示逆時針旋轉
            當角度爲正數——表示順時針旋轉
            (負數from——to正數:順時針旋轉)
            (負數from——to負數:逆時針旋轉)
            (正數from——to正數:順時針旋轉)
            (正數from——to負數:逆時針旋轉)
            toDegrees    屬性爲動畫結束時物件旋轉的角度 能夠大於360度
        pivotX
        pivotY    爲動畫相對於物件的X、Y座標的開始位    說明:以上兩個屬性值 從0%-100%中取值
        50%爲物件的X或Y方向座標上的中點位置
     -->
    <rotate
        android:interpolator="@android:anim/accelerate_interpolator"
        android:repeatCount="2"
        android:fromDegrees="0"
        android:toDegrees="+270"
        android:pivotX="50%"
        android:pivotY="50%"
        android:duration="3000"
    />

</set>
相關文章
相關標籤/搜索