android支持三种类型的动画:

·属性动画  一种补间动画,通过在目标对象的任何属性的两个值之间应用赠了变化,可以生成一种动画效果。这种动画可以用来生成各种效果,例如:改变视图的颜色、透明条、淡入淡出、改变字体大小或者增加字符的生命力。

·视图动画  一种补间动画,可以用来旋转、缩放和拉伸一个视图。

·帧动画    逐帧的格子动画,来显示一系列的drawable图片。

属性动画示例:1秒内以增量的方式在0和1之间调用目标对象的setAlpha方法,从而改变目标对象的透明度。

xml文件存放位置res/animator 文件夹下

<?xml version="1.0" encoding="utf-8"?>
<objectAnimator xmlns:android="http://schemas.android.com/apk/res/android"
android:propertyName="alpha"
android:duration="1000"
android:valueFrom="0.0"
android:valueTo="1.0"> </objectAnimator>

调用方法:

   private ImageView img;

   img=(ImageView)this.findViewById(R.id.imageView1);
Animator animator=AnimatorInflater.loadAnimator(this, R.animator.alpha);
animator.setTarget(img);
animator.start();

视图动画示例:目标在旋转360°的同时收缩并淡出。

xml文件存放位置 res/anim

<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android"
android:interpolator="@android:anim/accelerate_interpolator" > <rotate
android:duration="1000"
android:fromDegrees="0"
android:pivotX="50%"
android:pivotY="50%"
android:startOffset="500"
android:toDegrees="360" /> <scale
android:duration="500"
android:fromXScale="1.0"
android:fromYScale="1.0"
android:pivotX="50%"
android:pivotY="50%"
android:startOffset="500"
android:toXScale="0.0"
android:toYScale="0.0" /> <alpha
android:duration="500"
android:fromAlpha="1.0"
android:startOffset="500"
android:toAlpha="0.0" /> </set>

调用方法:

    Animation anim=AnimationUtils.loadAnimation(this, R.anim.amin_scoal);
img.setAnimation(anim);
img.animate().start();
动画类型属性
动画类型 效果 属性 有效值
Alpha 淡入/淡出 fromAlpha/toAlpha 0~1的浮点数
Scale 缩放 fromXScale/toXScale 0~1的浮点数
fromYScale/toYScale 0~1的浮点数
pivotX/pivotY 表示图像的宽/高比的字符串,从0%~100%
translate 移动 fromX/toX 0~1的浮点数
fromY/toY 0~1的浮点数
Rotate 旋转 fromDegrees/toDegrees 0~360的浮点数
pivotX/pivotY 表示图像的宽/高比的字符串,从0%~100%

·duration 动画的持续时间,已毫秒为单位。

·startOffset 动画开始之前的延迟,毫秒为单位

·fillBeforetrue 在动画开始之前动画变形。

·fillAftertrue 在动画开始只有变形

·interpolator 设置效果随时间改变的速度

<scale>标签为缩放节点
android:fromXscale="1.0" 表示开始时X轴缩放比例为 1.0 (原图大小 * 1.0 为原图大小)
android:toXscale="0.0"表示结束时X轴缩放比例为0.0(原图大小 *0.0 为缩小到看不见)
android:fromYscale="1.0" 表示开始时Y轴缩放比例为 1.0 (原图大小 * 1.0 为原图大小)
android:toYscale="0.0"表示结束时Y轴缩放比例为0.0(原图大小 *0.0 为缩小的看不到了)
android:pivotX="50%" X轴缩放的位置为中心点
android:pivotY="50%" Y轴缩放的位置为中心点
android:duration="2000" 动画播放时间 这里是2000毫秒也就是2秒

逐帧动画示例:循环显示一系列位图资源,每个资源会持续半秒。

xml文件存放位置res/drawable

<?xml version="1.0" encoding="utf-8"?>
<animation-list xmlns:android="http://schemas.android.com/apk/res/android"
android:oneshot="false">
 <item android:drawable="@drawable/test1" android:duration="500"></item>
<item android:drawable="@drawable/test2" android:duration="500"></item>
<item android:drawable="@drawable/test3" android:duration="500"></item>
</animation-list>

调用方法:

ImageView view=new ImageView(this);

view.setBackgroundResource(R.drawable.animtion_d);

AnimationDrawable anim=(AnimationDrawable)view.getBackground();

anim.start();

学习笔记-- android动画简述的更多相关文章

  1. Android动画学习笔记-Android Animation

    Android动画学习笔记-Android Animation   3.0以前,android支持两种动画模式,tween animation,frame animation,在android3.0中 ...

  2. Mina框架的学习笔记——Android客户端的实现

    Apache MINA(Multipurpose Infrastructure for Network Applications) 是 Apache 组织一个较新的项目,它为开发高性能和高可用性的网络 ...

  3. Android学习笔记-tween动画之java实现

    Android动画分为Tween动画和Frame动画,近期学习了,体tween动画,现在讲学习的心得以及相关知识介绍如下. Tween又称为补间动画,可以把对象进行缩小.放大.旋转和渐变等操作.   ...

  4. 学习笔记-----Android的View绘制过程

    边看源码边参考别人的博客等,做一下学习笔记. 要了解View的绘制,首先得知道View树的结构:(可以参考http://blog.csdn.net/qinjuning/article/details/ ...

  5. iOS学习笔记10-UIView动画

    上次学习了iOS学习笔记09-核心动画CoreAnimation,这次继续学习动画,上次使用的CoreAnimation很多人感觉使用起来很繁琐,有没有更加方便的动画效果实现呢?答案是有的,那就是UI ...

  6. Android动画学习(一)——Android动画系统框架简介

    2015-11-09补充:Drawable Animation极有可能是Frame Animation 这几天在找工作,面试的时候被问到了Android动画,之前完全没接触过这部分,直接给懵了,当然其 ...

  7. webgl学习笔记四-动画

    写在前面 建议先阅读下前面我的三篇文章. webgl学习笔记一-绘图单点 webgl学习笔记二-绘图多点 webgl学习笔记三-平移旋转缩放   下面我们将讲解下如何让一个正方形动起来~不断擦除和重绘 ...

  8. Android学习笔记_55_Tween动画 (渐变、缩放、位移、旋转)

    Android 平台提供了两类动画. 一类是Tween动画,就是对场景里的对象不断的进行图像变化来产生动画效果(旋转.平移.放缩和渐变).第二类就是 Frame动画,即顺序的播放事先做好的图像,与gi ...

  9. Android学习笔记_39_tween动画的实现(Animation和Frame)

    一.Animation动画的实现及特点: 1.Tween动画,通过对 View 的内容进行一系列的图形变换 (包括平移.缩放.旋转.改变透明度)来实现动画效果.   动画效果的定义可以采用XML来做也 ...

随机推荐

  1. laravel composer 指定版本

    composer create-project laravel/laravel=5.2.* --prefer-dist

  2. 控件包含代码块(即 <% ... %>),因此无法修改控件集合

    错误: “/”应用程序中的服务器错误. 控件包含代码块(即 <% ... %>),因此无法修改控件集合. 说明: 执行当前 Web 请求期间,出现未经处理的异常.请检查堆栈跟踪信息,以了解 ...

  3. logresolve - 解析Apache日志中的IP地址为主机名

    logresolve是一个解析Apache访问日志中IP地址的后处理程序. 为了使对名称服务器的影响降到最低,logresolve拥有极为自主的内部散列表缓存, 使每个IP值仅仅在第一次从日志文件中读 ...

  4. page object

    http://www.51testing.com/html/76/316176-849962.html

  5. 用Laravel+Grunt+Bower管理你的应用

    来源:http://yansu.org/2014/03/10/grunt-bower-and-laravel.html 为什么这么选择? 如今开源盛行,从后端的各个类库,到如今前端的jQuery插件, ...

  6. My Game --文件读取数据

    My Game --线段数据 中说到背景的绘制由贝赛尔曲线生成线段,用 DrawNode 画多边形,同时一张背景有两座山,一座山有两条以上贝赛尔曲线保存,用了嵌套的数据类:Bezier,LineLay ...

  7. Android中的Service小结

    简介 Service适合执行不需要和用户交互,而且长期运行的任务.即使程序被切换回后台,服务仍然可以正常运行.Service并不自动开启线程,默认运行在主线程中. Service中需要重载的函数 on ...

  8. 配置DelegatingFilterProxy使用Spring管理filter chain

    项目环境:JDK7 + Maven3.04 0. 项目使用springmvc作为controller层 1. 引入spring-security <dependency> <grou ...

  9. HTML元素隐藏和显示

    在web前端开发过程中,经常会用到隐藏和显示元素的方法 总结:1.通过JS或Jquery控制          2.通过CSS样式控制 一.Js或jquery (jquery为例) 1.隐藏元素 使用 ...

  10. Dapper 数据操作框架

    数据操作DapperFrom NuGet:Install-Package DapperorInstall-Package Dapper.StrongName微型ORM:PetaPoco获得PetaPo ...