android中动画分为3种:

  1. Tween Animation:通过对场景里的对象不断做图像变换(平移、缩放、旋转)产生动画效果,即是一种渐变动画;
  2. Frame Animation:顺序播放事先做好的图像,是一种画面转换动画。
  3. Property Animation:属性动画,通过动态地改变对象的属性从而达到动画效果,属性动画为API 11新特性。

下面只介绍前两种动画的使用方法,属性动画将在后续文章中介绍

一 Tween Animation

 Tween Animation有四种形式:

  l  alpha              渐变透明度动画效果

  l  scale              渐变尺寸伸缩动画效果

  l  translate         画面位置移动动画效果

  l  rotate              画面旋转动画效果

这四种动画实现方式都是通过Animation类和AnimationUtils配合实现。

可以通过xml实现:动画的XML文件在工程中res/anim目录。

例如:rotate.xml

<?xml version="1.0" encoding="utf-8"?><set xmlns:android="http://schemas.android.com/apk/res/android"android:fillAfter = "false"android:zAdjustment="bottom"><rotateandroid:fromDegrees="0"android:toDegrees="360"android:pivotX="50%"android:pivotY="50%"android:duration="4000"/>
</set>

使用动画

Animation anim = AnimationUtils.loadAnimation(mContext, R.anim.rotate);//监听动画的状态(开始,结束)
anim.setAnimationListener(new EffectAnimationListener());
textWidget = (TextView)findViewById(R.id.text_widget);
textWidget.setText("画面旋转动画效果");
textWidget.startAnimation(anim);

二 Frame Animation

  Frame Animation是顺序播放事先做好的图像,跟电影类似。不同于animation package,Android SDK提供了另外一个类AnimationDrawable来定义使用Frame Animation。

利用xml文件实现:res/drawable-hdpi/frame.xml:
<?xml version="1.0" encoding="utf-8"?><animation-listxmlns:android="http://schemas.android.com/apk/res/android"android:oneshot="true"><item android:drawable="@drawable/p1" android:duration="1000"></item><item android:drawable="@drawable/p2" android:duration="1000"></item><item android:drawable="@drawable/p3" android:duration="1000"></item><item android:drawable="@drawable/p4" android:duration="1000"></item><item android:drawable="@drawable/p5" android:duration="1000"></item><item android:drawable="@drawable/p6" android:duration="1000"></item>
</animation-list>

使用动画

AnimationDrawable anim = (AnimationDrawable)getResources().
getDrawable(R.drawable.frame);
textWidget = (TextView)findViewById(R.id.text_widget);
textWidget.setText("背景渐变动画效果");
textWidget.setBackgroundDrawable(anim);
anim.start();

这里有点不同的是,利用AnimationDrawable实现动画时,本身并没有提供接口来监听动画的状态(开始,结束),需要自己处理。

android动画简介相关推荐

  1. android动画应用,Android 动画

     该文章是一个系列文章,是本人在Android开发的漫漫长途上的一点感想和记录,我会尽量按照先易后难的顺序进行编写该系列.该系列引用了<Android开发艺术探索>以及<深入理解A ...

  2. android 动画多次使用,Android动画使用(二)——补间(View)动画

    1.Android动画简介 1.1 分类 Android系统提供了很多丰富的API去实现UI的2D与3D动画,最主要的划分可以分为如下几类: Drawable Animation: 这种动画(也叫Fr ...

  3. 【Android 属性动画】属性动画 Property Animation 简介 ( 属性动画简介 | 属性动画特性 )

    文章目录 一.属性动画简介 二.属性动画特性 一.属性动画简介 属性动画简介 : 1.动画制作框架 : 属性动画系统 , 允许你 将任何可变的操作制作成动画 , 其功能很强大 ; 2.基本功能 : 使 ...

  4. Android动画之旅-开篇动画简介

    Duang~! Duang~!Duang~! 哈哈,亲爱的小伙伴们,看到上面这句话你有木有联想到什么呢?没错,之前成龙大哥代言的一个很火的洗发露广告词.为什么要用三个词来开启我们Android动画之旅 ...

  5. android jason动画,Android 动画之Lottie动画使用

    Android 动画之Lottie动画使用 一:简介 Lottie是Airbnb开源的一套跨平台的完整解决方案,设计师只需要使用After Effects(简称AE)设计动画之后,使用Lottic提供 ...

  6. android动画详解

    转自:工匠若水 http://blog.csdn.net/yanbober 1 背景 不能只分析源码呀,分析的同时也要整理归纳基础知识,刚好有人微博私信让全面说说Android的动画,所以今天来一发A ...

  7. Android动画(1)

    Android动画:这是一份全面 & 详细的动画使用攻略 前言 动画的使用 是 Android 开发中常用的知识 可是动画的种类繁多.使用复杂,每当需要 采用自定义动画 实现 复杂的动画效果时 ...

  8. Android动画之AnimatorSet联合动画用法

    动画入门和进阶文章列表: Animation动画概述和执行原理 Android动画之补间动画TweenAnimation Android动画之逐帧动画FrameAnimation Android动画之 ...

  9. Android动画之LayoutTransition布局动画

    动画入门和进阶文章列表: Animation动画概述和执行原理 Android动画之补间动画TweenAnimation Android动画之逐帧动画FrameAnimation Android动画之 ...

最新文章

  1. 6个你应该用用看的用于文本分类的最新开源预训练模型 忆臻
  2. java override格式_Lambda表达式告别@override
  3. SpringMVC+RestFul详细示例实战教程(实现跨域访问)
  4. 服务器搬迁方案_数据中心机房改造搬迁IDC机房工程建设
  5. 极点五笔状态栏的隐藏和显示的快捷键
  6. jQuery教程06-基本筛选选择器
  7. 【muduo源码分析】TcpServer服务架构
  8. Hibernate缓存研究
  9. 从认知语言学的角度来看计算机没有,从认知语言学的角度来看「ところ」
  10. 《老罗Android开发视频教程-安卓巴士》(Android 开发)
  11. [ORA-01033: ORACLE正在初始化或关闭]问题解决方案
  12. 计算机蓝屏代码0x000000ED,XP系统蓝屏提示错误代码0x000000ED怎么办?
  13. 计算机有哪些交叉专业研究生,与理工科交叉的计算机专业考研方向有哪些?
  14. VS(visual studio)中使用ReportViewer控件和报表设计器 RDLC
  15. 【Uplift】因果推断基础篇
  16. iOS 音乐播放器的实现
  17. springboot初次使用template可能遇到的问题
  18. MathType中/英文版下载地址汇总(适用于Mathtype6.9)
  19. 什么是深度学习?怎么学好深度学习?
  20. 【ORA-00257:archiver error. Connect internal only, until freed;清理归档日志】

热门文章

  1. php 获取配置信息,PHP系统配置信息的获取
  2. matlab实验数据处理,实验一 数据处理方法的MATLAB实现
  3. 使用echarts制作泡泡效果
  4. android 9华为p20,华为P20PRO升级EMUI9.0(安卓9.0)的一些感受
  5. Docker使用入门
  6. 数电技术基础大恶补09:脉冲产生及其整形
  7. 计算机软件基础第二版p,《计算机软件基础(二)》
  8. PCB设计:过孔的设计规则
  9. creo4.0 二维图转pdf
  10. 温故而知新CentOS宝塔