android自定义animation

 在res目录下创建文件夹anim,在文件夹中创建xml文件

<?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>

 

 

posted @ 2013-08-24 20:50  tagie  阅读(427)  评论(0编辑  收藏  举报