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 动画框架详解的第二部分中,我们将深入探讨如何实现复杂的Android Launcher的平滑和立体翻页效果。这一部分建立在第一部分的基础上,第一部分主要讲解了Android动画框架的原理,包括Y轴旋转的动画示例。 ...
最后,压缩包中的文档《Android动画框架详解——第1部分》和《Android动画框架详解——第2部分》很可能会深入讨论这些主题,提供更具体的实现示例和技巧。通过学习这些文档,开发者将能更全面地理解和运用Android的...
Android 动画框架详解 Android 平台的动画机制为开发者提供了丰富的视觉效果,包括Tween动画和Frame动画。Tween动画通过连续改变视图对象的位置、大小、旋转或透明度来创建动态效果,而Frame动画则像播放电影一样,...
Android开发杂谈_split_2 .pdf 史上最全的android面试题库 .pdf 淘宝客户端for android .pdf 06_Android_GUI_System .pdf Android动画框架详解——第1部分 .pdf Android动画框架详解——第2部分 .pdf
《Android应用开发详解》这本书是为初学者量身打造的一本指南,旨在深入浅出地介绍Android应用开发的各个环节。Android开发是一个庞大且复杂的领域,涵盖了许多不同的技术和工具,但本书将带你逐步走进这个领域,从...
首先,从基础篇开始,你会了解到Android系统架构,包括Linux内核、应用程序框架、库和服务、应用程序组件等。这部分会讲解如何创建Android项目,配置开发环境,如安装Android SDK,使用Eclipse或Android Studio等...
《Android 4.0 Animator框架详解》 在Android 4.0版本中,引入了一种新的动画框架——Animator,它提供了更加丰富和精细的动画控制,相较于旧有的Animation框架,Animator更加简单且高效。Animator框架的引入使得...
Android系统基于Linux内核,其应用程序框架支持组件之间的交互,如Activity(活动)、Service(服务)、BroadcastReceiver(广播接收者)和ContentProvider(内容提供者)。Activity是用户界面的主要承载者,而...
《Android应用开发详解》 作者:郭宏志 编著 内容简介 本书分为三个部分,包括基础篇、技术篇和应用篇。由浅入深地讲述了Android应用开发的方方面面。 第一篇 基础篇 第1章 Android概述 Android概述,讲述了...
"android通用LoadingView封装框架"是一个专为Android设计的组件,旨在帮助开发者高效地处理数据加载过程中的各种状态,如加载中、数据显示、加载失败以及无数据等场景。这个框架通过将这些常见操作进行封装,使得...
以上只是"Android应用开发详解d88 android入门"的部分知识点,实际学习中,你将深入到每个细节,包括但不限于动画、通知、文件I/O、多媒体支持、蓝牙连接、地图集成等。通过这个入门教程,你可以逐步掌握Android开发...
### Android入门到精通详解知识点概览 #### 第一篇:Android系统结构和SDK使用 ##### 第1章:Android的系统介绍 - **系统介绍**:Android是Google开发的一款基于Linux平台的开源操作系统,专为移动设备设计。它...