1.概述:Android 平台提供了两类动画,一类是 Tween 动画,即通过对场景里的对象不断做图像变换 ( 平移、缩放、旋转 ) 产生动画效果;第二类是 Frame 动画,即顺序播放事先做好的图像,跟电影类似。
2.原理:
现有的 Android 动画框架是建立在 View 的级别上的,在 View 类中有一个接口 startAnimation 来使动画开始,startAnimation 函数会将一个 Animation 类别的参数传给 View,这个 Animation 是用来指定我们使用的是哪种动画,现有的动画有平移,缩放,旋转以及 alpha 变换等。
Android 动画就是通过 ParentView 来不断调整 ChildView 的画布坐标系来实现的,下面以平移动画来做示例,见下图 4,假设在动画开始时 ChildView 在 ParentView 中的初始位置在 (100,200) 处,这时 ParentView 会根据这个坐标来设置 ChildView 的画布,在 ParentView 的 dispatchDraw 中它发现 ChildView 有一个平移动画,而且当前的平移位置是 (100, 200),于是它通过调用画布的函数 traslate(100, 200) 来告诉 ChildView 在这个位置开始画,这就是动画的第一帧。如果 ParentView 发现 ChildView 有动画,就会不断的调用 invalidate() 这个函数,这样就会导致自己会不断的重画,就会不断的调用 dispatchDraw 这个函数,这样就产生了动画的后续帧,当再次进入 dispatchDraw 时,ParentView 根据平移动画产生出第二帧的平移位置 (500, 200),然后继续执行上述操作,然后产生第三帧,第四帧,直到动画播完
.
原文:http://www.ibm.com/developerworks/cn/opensource/os-cn-android-anmt1/index.html
示例可参考:http://www.eoeandroid.com/forum.php?mod=viewthread&tid=564
分享到:
相关推荐
Android 动画框架详解由原理篇和实例篇两部分组成。本文是第一部分原理篇,主要分析 Tween 动画的实现原理, 最后简单介绍在 Android 中如何通过播放 Gif 文件来实现动画。第二部分实例篇将在原理篇的基础上,向您...
Android 动画框架详解第 1 部分,共两部分
Android 动画框架详解第 2 部分,共两部分
Android开发教程之动画框架详解,第 1 部分
Android_动画框架基本原理详解.doc
Android开发教程之动画框架详解,第 2 部分.pptx
Android开发杂谈_split_2 .pdf 史上最全的android面试题库 .pdf 淘宝客户端for android .pdf 06_Android_GUI_System .pdf Android动画框架详解——第1部分 .pdf Android动画框架详解——第2部分 .pdf
本文档总结说明了android动画框架的设计及使用
《Android应用开发详解》 作者:郭宏志 编著 内容简介 本书分为三个部分,包括基础篇、技术篇和应用篇。由浅入深地讲述了Android应用开发的方方面面。 第一篇 基础篇 第1章 Android概述 Android概述,讲述了...
教程名称: 解读Android应用开发框架【】Android Framework框架分析【】Android 动画框架基本原理详解【】Android_GDI基本框架【】Android应用框架原理与程序设计36技【】Android开发指南中文版:应用程序框架【】...
Android 的动画框架分为两类: 传统动画(Animation):通过系统不断调用onDraw方法重绘界面,来达到动画的效果。 属性动画(Animator):通过操纵一个属性的get/set方法,真实地改变目标的某些属性。 传统动画框架的...
Android的系统架构 6 一、应用程序 6 二、应用程序框架 6 三、Android Runtime 7 四、系统库 7 五、Linux 内核 8 Webkit浏览器引擎简介 9 Dalvik虚拟机简介 11 什么是Dalvik虚拟机 11 Dalvik和Android系统 11 Dalvik...
《Android应用开发揭秘》内容全面,不仅详细讲解了Android框架、Android组件、用户界面开发、游戏开发、数据存储、多媒体开发和网络开发等基础知识,而且还深入阐述了传感器、语音识别、桌面组件开发、Android游戏...
1.1.2 Android系统框架 1.1.3 应用程序框架 1.2 Eclipse开发环境 1.2.1 安装ADT插件 1.2.2 安装SDK 1.2.3 配置源代码 1.2.4 创建AVD 1.3 Android模拟器 1.3.1 ADB工具 1.3.2 其它常用工具 1.4 本章小结 第2章 应用...
1.1.3 Android应用程序框架 1.2 OMS介绍 1.2.1 OPhone介绍 1.2.2 Widget介绍 1.3 小结 第2章 Android开发环境搭建 2.1 Android开发准备工作 2.2 开发包及其工具的安装和 配置 2.2.1 安装JDK和配置Java开发 环境 ...
本文实例讲述了Android编程之Animation动画用法。分享给大家供大家参考,具体如下: Animations 一、Animations介绍 Animations是一个实现android UI界面动画效果的API,Animations提供了一系列的动画效果,可以进行...
最近ConstrainLayout是Android中比较火的一个东西。ConstrainLayout可以使View层级扁平化,提升性能,支持任意的边框,其目的就是修复之前layout的一些短板。其实ConstrainLayout还有一个大多数人没有注意到的特性:...
第二篇 Android应用程序的概述和框架 ..........................................................................56 第3章 Android应用层程序的开发方式 .........................................................
第二篇 Android应用程序的概述和框架 ..........................................................................56 第3章 Android应用层程序的开发方式 .........................................................