Android  Animation一共有四种

Alpha: 淡入淡出效果

Scale: 缩放效果

Rotate: 旋转效果

Translate:移动效果

使用Tweened Animations的步骤

1.创建一个AnimationSet对象

2.根据需要创建需要的Animation对象

3.根据软件动画的需要,为Animation对象设置相应的数据

4.将Animation对象添加到AnimationSet对象中

5.使控件对象开始执行AnimationSet

Alpha动画

AnimationSet as=new AnimationSet(true); 
AlphaAnimation al=new AlphaAnimation(1,0); 
//1代表完全不透明,0代表完全透明  
al.setDuration(3000); 
as.addAnimation(al); 
iv.startAnimation(as);

AnimationSet as=new AnimationSet(true);
AlphaAnimation al=new AlphaAnimation(1,0);
 //1代表完全不透明,0代表完全透明
 al.setDuration(3000);
 as.addAnimation(al);
 iv.startAnimation(as);

Rotate动画

AnimationSet as=new AnimationSet(true); 
RotateAnimation al=new RotateAnimation (0,720,Animation.RELATIVE_TO_PARENT,0.5f,Animation.RELATIVE_TO_PARENT,0.5f); 
//前两个参数参数旋转的角度,后面几个参数决定旋转的中心  
//Animation.ABSOLUTE:绝对坐标  
//Animation.RELATIVE_TO_PARENT:相对父控件  
//Animation.RELATIVE_TO_SELF:相对自己  
al.setDuration(3000); 
as.addAnimation(al); 
iv.startAnimation(as);

AnimationSet as=new AnimationSet(true);
  RotateAnimation al=new RotateAnimation (0,720,Animation.RELATIVE_TO_PARENT,0.5f,Animation.RELATIVE_TO_PARENT,0.5f);
  //前两个参数参数旋转的角度,后面几个参数决定旋转的中心
  //Animation.ABSOLUTE:绝对坐标
  //Animation.RELATIVE_TO_PARENT:相对父控件
  //Animation.RELATIVE_TO_SELF:相对自己
  al.setDuration(3000);
  as.addAnimation(al);
  iv.startAnimation(as);

Scale动画

AnimationSet as=new AnimationSet(true); 
ScaleAnimation al=new ScaleAnimation(0,1,0,1,Animation.RELATIVE_TO_SELF,0.5f,Animation.RELATIVE_TO_SELF,0.5f); 
//前四个参数是X从多大到多大,Y从多大到多大,后面的参数是缩放的中心点  
            al.setDuration(3000); 
            as.addAnimation(al); 
            iv.startAnimation(as);

AnimationSet as=new AnimationSet(true);
ScaleAnimation al=new ScaleAnimation(0,1,0,1,Animation.RELATIVE_TO_SELF,0.5f,Animation.RELATIVE_TO_SELF,0.5f);
   //前四个参数是X从多大到多大,Y从多大到多大,后面的参数是缩放的中心点
   al.setDuration(3000);
   as.addAnimation(al);
   iv.startAnimation(as);

Translate动画

AnimationSet as=new AnimationSet(true); 
TranslateAnimation al=new TranslateAnimation(Animation.RELATIVE_TO_SELF,0,Animation.RELATIVE_TO_SELF,2,Animation.RELATIVE_TO_SELF,0,Animation.RELATIVE_TO_SELF,2); 
            al.setDuration(3000); 
            as.addAnimation(al); 
            iv.startAnimation(as);

AnimationSet as=new AnimationSet(true);
   TranslateAnimation al=new TranslateAnimation(Animation.RELATIVE_TO_SELF,0,Animation.RELATIVE_TO_SELF,2,Animation.RELATIVE_TO_SELF,0,Animation.RELATIVE_TO_SELF,2);
   al.setDuration(3000);
   as.addAnimation(al);
   iv.startAnimation(as);
Animation还有几个方法

setFillAfter(boolean fillAfter)

如果fillAfter的值为真的话,动画结束后,控件停留在执行后的状态

setFillBefore(boolean fillBefore)

如果fillBefore的值为真的话,动画结束后,控件停留在动画开始的状态

setStartOffset(long startOffset)

设置动画控件执行动画之前等待的时间

setRepeatCount(int repeatCount)

设置动画重复执行的次数

android之animation的更多相关文章

  1. Android动画Animation之Tween用代码实现动画

    透明度动画.旋转动画.尺寸伸缩动画.移动动画 package com.javen.tween; import android.annotation.SuppressLint; import andro ...

  2. Android 动画animation 深入分析

    转载请注明出处:http://blog.csdn.net/farmer_cc/article/details/18259117 Android 动画animation 深入分析 前言:本文试图通过分析 ...

  3. Android之Animation动画的使用(一)

    我们在使用一些控件时候,难免会设置一些进入和退出的动画效果,比如popupwindow.listview的item动画.按钮.图片等等,要使这些控件有动画效果,当然需要用到Animation了. 下面 ...

  4. Android:Animation

    Android 之 Animation 关于动画的实现,Android提供了Animation,在Android SDK介绍了2种Animation模式:1. Tween Animation:通过对场 ...

  5. Android动画Animation简单示例

    Animation是Android给我们提供的一个可以实现动画效果的API,利用Animation我们可以实现一系列的动画效果,比如缩放动画,透明度动画,旋转动画,位移动画,布局动画,帧动画等等.An ...

  6. 深入Animation,在SurfaceView中照样使用Android—Tween Animation!

    第一类:Frame By Frame 帧动画( 不推荐游戏开发中使用)             所谓帧动画,就是顺序播放事先做好的图像,类似于放电影:             分析: 此种方式类似我之 ...

  7. android.view.animation(2) - 插值器Interpolator

    public interface Interpolator implements TimeInterpolator android.view.animation.Interpolator Known ...

  8. Android Property Animation动画

    3.0以前,android支持两种动画模式,tween animation,frame animation,在android3.0中又引入了一个新的动画系统:property animation,这三 ...

  9. Android中Animation 详细解读

    Animation从总体来说可以分为两类: 1.Tweened Animations:该类提供了旋转,移动,伸展,淡入淡出等效果 Tweened Animations也有四种类型: 1.     Al ...

随机推荐

  1. 由cobertura插件生成测试覆盖率报告

    由于cobertura已经集成到maven中,所以可以很方便的直接调用此插件生成报告: 直接运行命令:mvn cobertura:cobertura 就可以直接生成测试报告了. 下面是截图:

  2. 用PowerMock mock 由工厂方法产生的对象

    有些对象需要mock的对象是由工厂方法产生出来的,而工厂方法一般是静态方法,这时候就需要同时mock工厂方法及对象 被测方法: public class EmployeeServiceFactory ...

  3. TCP Socket 通讯(客户端与服务端)

    /*----------------------------编译环境:VS2015---------------------------------------*/ /*--------------- ...

  4. INSERT INTO 语句的语法错误【 OLE报错,office终端执行SQL没有问题】

    表名,字段在代码执行之前一定要进行" [ 字段.表名 ] "中括号包裹,不然会报INSERT INTO 语句的语法错误! office终端没有报错的原因,应该是office在执行之 ...

  5. JDBC driver connection string大全

    Database   / data source URL format /   driver name Value Default port MySQL URL format: jdbc:mysql: ...

  6. 为什么eclipse中代码提示错误,但是项目目录却不提示错误

    public class Aasf { public static void main(String[] args) { System.out.println("");aihfsa ...

  7. JS 笔记(二) - 函数

    1. 函数的 声明 1) 声明式写法 function j1(id){ alert(id); } 2) 声明匿名函数变量 var j2 = function (a, b) { alert(a + &q ...

  8. Android 数据库管理— — —升级数据库

    package com.example.databasetest; import android.content.Context;import android.database.sqlite.SQLi ...

  9. MySQL数据库9 - 日期与时间函数

    一 日期和时间函数 函数的概念:按指定格式输入参数,返回正确结果的运算单元 1. 返回当前日期:curdate() current_date() current_date()+0可以将当前日期转换为数 ...

  10. 【转】C#线程同步示例

    using System; using System.Threading; // 银行帐户类 class Account { int balance;                         ...