Animation

Androidanimation由四种类型组成

XML

alpha

渐变透明度动画效果

scale

渐变尺寸伸缩动画效果

translate

画面转换位置移动动画效果

rotate

画面转移旋转动画效果

 

JavaCode

AlphaAnimation

渐变透明度动画效果

ScaleAnimation

渐变尺寸伸缩动画效果

TranslateAnimation

画面转换位置移动动画效果

RotateAnimation

画面转移旋转动画效果

如何在XML文件中定义动画

① 打开Eclipse,新建Android工程

② 在res目录中新建anim文件夹

③ 在anim目录中新建一个myanim.xml(注意文件名小写)

④ 加入XML的动画代码

<?xml version="1.0" encoding="utf-8"?>

<set xmlns:android=http://schemas.android.com/apk/res/android

                 android:shareInterpolator=”false”//??????,可删

>

  <alpha //透明度控制动画效果

    android:fromAlpha="0.1" //动画起始时透明度

    android:toAlpha="1.0" //动画结束时透明度

    android:duration="3000" //动画持续时间,毫秒

  />

  <scale //尺寸伸缩动画效果

/*

指定一个动画的插入器,有三种动画插入器:
      accelerate_decelerate_interpolator 
加速-减速 动画插入器
      accelerate_interpolator       
加速-动画插入器
      decelerate_interpolator       
减速- 动画插入器

*/

    android:interpolator="@android:anim/accelerate_decelerate_interpolator"

android:fromXScale="0.0" //动画起始时 X坐标上的伸缩尺寸

/*0.0表示收缩到没有
                    1.0
表示正常无伸缩    
                   
值小于1.0表示收缩 
                   
值大于1.0表示放大*/

    android:toXScale="1.4" //动画结束时 X坐标上的伸缩尺寸

    android:fromYScale="0.0" //动画起始时Y坐标上的伸缩尺寸

    android:toYScale="1.4" //动画结束时Y坐标上的伸缩尺寸

    android:pivotX="50%" //动画相对于物件的X坐标的开始位置, 0%-100%中取值

    android:pivotY="50%" //动画相对于物件的Y坐标的开始位置

    android:fillAfter="false" //当设置为true ,该动画转化在动画结束后被应用

    android:startOffset=“700”//从上次动画停多少时间开始执行下个动画

    android:duration="700"

/>

  <translate//位置转移动画效果

android:fromXDelta="30" //动画起始时 X坐标上的位置
android:toXDelta="-80" //
动画结束时 X坐标上的位置
android:fromYDelta="30" //
动画起始时 Y坐标上的位置
android:toYDelta="300" //
动画结束时 Y坐标上的位置
android:duration="2000

/*没有指定fromXType toXType fromYType toYType 时候,
                    
默认是以自己为相对参照物   */

/>

  <rotate     android:interpolator="@android:anim/accelerate_decelerate_interpolator"
android:fromDegrees="0" //
动画起始时物件的角度
android:toDegrees="+350"     //
动画结束时物件旋转的角度可以大于360

/*                   当角度为负数——表示逆时针旋转
                    
当角度为正数——表示顺时针旋转             
                     (
负数from——to正数:顺时针旋转)  
                     (
负数from——to负数:逆时针旋转)
                     (
正数from——to正数:顺时针旋转)
                     (
正数from——to负数:逆时针旋转)       */   
android:pivotX="50%"
android:pivotY="50%"    
android:duration="3000" /> 

/>

</set>

如何使用xml中的动画效果?

Context为程序的上下文id为动画
//
使用loadAnimation()来加载XML文件

如何在Java代码中定义动画 ?fromAlpha
第二个参数 动画结束时候透明度:
0.0
表示完全透明
//第一个参数 X坐标上的移动位置toXDelta为动画结束时     
//
第三个参数Y坐标上的移动位置
toYDelta为动画结束时//第一个参数   
//
第二个参数  
//
第三个参数X轴相对于物件位置类型
pivotXValue为动画相对于物件的
//
第五个参数Y轴相对于物件位置类型
pivotYValue为动画相对于物件的*/

myAnimation_Rotate = new RotateAnimation(0.0f, +350.0f,

Animation.RELATIVE_TO_SELF,0.5f,Animation.RELATIVE_TO_SELF, 0.5f);

//设置动画持续时间
myAnimation_Alpha.setDuration(5000);


使用从startAnimation()来为View等等添加一个动画效果 

<cycleInterpolator xmlnsandroid=” http://schemas.android.com/apk/res/androidandroid:cycles=”7”/>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值