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. 超级素数(sprime) (BFS)

    问题 G: 超级素数(sprime) 时间限制: 1 Sec  内存限制: 64 MB提交: 47  解决: 11[提交][状态][讨论版] 题目描述 超级素数是指一个素数,每去掉后面一个数字,总能保 ...

  2. ubuntu16.04怎么设置宽带连接

    第一步,安装pppoecof 打开终端,输入命令sudo apt-get install pppoeconf 安装成功之后,开始手动配置. 第二步,配置连接 打开终端,输入命令pppoeconf 接下 ...

  3. 详解jQuery的选择器

    1.基本选择器 基本选择器是jQuery中最常用的选择器,也是最简单的选择器,它通过元素id.class和标签名等来查找DOM对象.在网页中,每个id名称只能使用一次,class允许重复使用. ♠ # ...

  4. 【PKUSC 2015】的一道数学题

    有9个人,每三个人中至少有两个互相认识,求证这里面至少有4个人互相认识 PKU官方题解: 引理:二染色K6中一定有同色K3. 证明:考虑某一个点,它一定连出至少三条同色边(不妨设为红边),这三条边连的 ...

  5. [BZOJ2753]滑雪与时间胶囊

    第一问直接把可以走的边连起来bfs一遍即可 第二问可以用类似kruskal的方法,只不过排序的依据应该变为第一关键字为终点高度(从大到小),第二关键字为边权(从小到大),只排序可以走的边 因为同样高度 ...

  6. 【权值分块】bzoj1861 [Zjoi2006]Book 书架

    权值分块……rank3……没什么好说的. #include<cstdio> #include<cmath> #include<algorithm> using na ...

  7. cocos2d 文件系统使用文件内存映射性能对比

    //cocos 修改代码 ..... //性能测试代码 extern "C" { #include <time.h> #include <stdlib.h> ...

  8. gnuplot加速比比较图

    1)使用gnuplot画图代码如下: :] :] set xlabel "分片数" set ylabel "加速比" plot : w lp pt ps tit ...

  9. 动态页面,登陆,注册,留言 JSP

    登陆页 主要使用html表单,javascript验证注册信息 <%@ page language="java" contentType="text/html; c ...

  10. 全局对象Application的使用,以及如何在任何地方得到Application全局对象

    Application和Activity,Service一样是android框架的一个系统组件,当android程序启动时系统会创建一个application对象,用来存储系统的一些信息.通常我们是不 ...