property动画是一个强大的框架,它差点儿能使你动画不论什么东西。

你能够定义一个动画来改变对象的不论什么属性,不论其是否被绘制于屏幕之上。

一个属性动画在一定时间内多次改变一个属性(对象的一个字段)的值。要动画某个东西。你需指定对象的目标属性。比方位置,动画的持续时间。和改变的值的范围。

属性动画系统同意你指定下面动画属性:

· Duration: 动画持续时间。

默认是300 ms.

· Time interpolation: 你能够指定一个函数来定义怎样跟据当前的时间计算属性的值。

· 反复次数和行为: 你能够指定是否当动画结束时又一次開始以及反复的次数。你还是能够指定是否让动画倒着播放。设置动画倒着播放使得动画先正播再倒播这样反复进行。直到到达所限制的反复次数。

· 动画集: 你能够将多个动画在逻辑上放到一个组中一起播放或依次播放或按指定的延迟时间播放。

· Frame refresh delay: 你能够指定动画的帧刷新频率。默认是设置为10 ms。可是你的应用能刷新帧的实际速度终于决定于系统的忙碌程度和系统执行后台代码的速度。

· 属性动画怎样工作

首先,我们用一个样例来大体了解一下一个动画怎样工作。下图描写叙述了某个对象要动画其x属性。这代表它的横向位置。动画持续时间被设置为40 ms而且其动画距离被设置为40 像素。每10 ms移动10像素。在40ms后,动画停止。对象停在了40的位置上。

这是一个使用线性插值的对象,表示对象匀速移动。

图 1. 线性动画的样例

你也能够使用非线性插值的动画。下图演示了一个開始加速,最后减速的动画。对象还是在40秒内移动40像素,可是是非线性的。

開始加速到半路然后减速直到最后。就像下图所看到的。開始和结束时移动的距离比中间移动的距离短。

图 2. 非线性动画的样例

让我们细致看一下属性动画系统是怎样计算上图所看到的的动画的重要部分的。

下图演示了主要类之间怎样相互操作。

Figure 3. 动画是怎样计算的

中,插值函数值在 t = 10 ms时为.15 。所以些时属性的值将是.15 X (40 - 0)。或6。

上一篇:android动画具体解释一 概述

下一篇:android动画具体解释三 动画API概述

Android非常多时候要用NDK开发,对于C语言不是非常熟悉的小伙伴,能够看一下本人录制的视频教程:http://edu.csdn.net/course/detail/2057

希望对你们有所帮助!

android动画具体解释二 属性动画原理的更多相关文章

  1. Android动画(二)-属性动画

    我们在上一篇博客中,讨论了视图动画与帧动画.那么这节课则要讨论更复杂,更强大的Property animation(属性动画). 视图动画使用简单,但是功能也简单.(只有那四种功能).并且也不改变Vi ...

  2. 【Android - 基础】之Animator属性动画

    1      概述 在3.0系统之前,Android给我们提供了逐帧动画Frame Animation和补间动画Tween Animation两种动画: 1)        逐帧动画的原理很简单,就是 ...

  3. 【Android - 进阶】之Animator属性动画

    1.概述 在3.0系统之前,Android给我们提供了逐帧动画Frame Animation和补间动画Tween Animation两种动画: 逐帧动画的原理很简单,就是将一个完整的动画拆分成一张张单 ...

  4. android动画具体解释四 创建动画

    使用ValueAnimator进行动画 通过指定一些int, float或color等类型的值的集合.ValueAnimator 使你能够对这些类型的值进行动画.你需通过调用ValueAnimator ...

  5. Android Scroll具体解释(二):OverScroller实战

    作者: ztelur 联系方式:segmentfault,csdn.github 本文仅供个人学习,不用于不论什么形式商业目的,转载请注明原作者.文章来源.链接,版权归原文作者全部.  本文是andr ...

  6. android动画具体解释一 概述

    动画和图形概述 Android 提供了大量的强大的API以应用于UI动画和绘制2D和3D图形.以下各节向你描写叙述了这些API的预览和系统能力以帮助你决定怎么才是达到你需求的最佳方法. 动画 Andr ...

  7. Android图文具体解释属性动画

    Android中的动画分为视图动画(View Animation).属性动画(Property Animation)以及Drawable动画.从Android 3.0(API Level 11)開始. ...

  8. Android属性动画完全解析(中)

    转载:http://blog.csdn.net/guolin_blog/article/details/43536355 大家好,在上一篇文章当中,我们学习了Android属性动画的基本用法,当然也是 ...

  9. Android(java)学习笔记264:Android下的属性动画高级用法(Property Animation)

    1. 大家好,在上一篇文章当中,我们学习了Android属性动画的基本用法,当然也是最常用的一些用法,这些用法足以覆盖我们平时大多情况下的动画需求了.但是,正如上篇文章当中所说到的,属性动画对补间动画 ...

随机推荐

  1. Coloring Dominoes

    问题 E: Coloring Dominoes 时间限制: 1 Sec  内存限制: 128 MB提交: 279  解决: 95[提交] [状态] [讨论版] [命题人:] 题目描述 We have ...

  2. python3开发进阶-Django框架中的ORM的常用操作的补充(F查询和Q查询,事务)

    阅读目录 F查询和Q查询 事务 一.F查询和Q查询 1.F查询 查询前的准备 class Product(models.Model): name = models.CharField(max_leng ...

  3. 快速创建Django验证码

    # 生成随机验证码图片 import stringfrom random import randint, samplefrom PIL import Image, ImageDraw, ImageFo ...

  4. jvm内存参数配置

    qunar国内旗舰店master  (4核 8G) qunar国内旗舰店hub(4核 8G) qunar国内旗舰店provider(4核 8G)

  5. React Conf 2017 干货总结 1: React + ES next = ♥

    React Conf 2017在加利福尼亚州的圣克拉拉万豪酒店圆满落幕,这已经是Facebook举办的第三届React官方大会了.虽然不能参会,但是作为前端开发者,我们当然不能错过这个绝佳的学习契机. ...

  6. TELNET终端类型选项

    转:http://www.cnpaf.net/Class/Telnet/200408/5.html 1. 命令名称及编号TERMINAL-TYPE242.命令含义IACWILLTERMINAL-TYP ...

  7. npm使用常见问题及注意事项

    1.npm.cnpm.yarn不要混用,一个项目只使用一个 2.NPM problem: npm ERR! extraneous 表明安装了很多不需要的三方包 使用命令 npm prune删除无用的包 ...

  8. jquery修改ajax的header的字段origin方法,均被浏览器拒绝

    一.方法一 $.ajax({ headers: { Origin: "http://targetIP" } }); 二.方法二 $.ajax({ beforeSend: funct ...

  9. iOS:Xcode7下创建 .a静态库 和 .framework静态库

    Xcode7 中创建静态库:.a 和 .framework 一.简单介绍 1.什么是库? 库是程序代码的集合,是共享程序代码的一种方式 2.库的分类 根据源代码的公开情况,库可以分为2种类型 (1)开 ...

  10. Makefile的制作

    一个工程中的源文件不计其数,其按类型.功能.模块分别放在若干个目录中,makefile定义系列的规则来指定,哪些文件需要先编译,哪些文件需要后编译,哪些文件需要重新编译,甚至于进行更复杂的功能操作,因 ...