补间动画就是通过对场景里的对象不断进行图像变化来产生动画效果。在实现补间动画时,只需要定义开始和结束的“关键帧”,其他过渡帧由系统自动计算并补齐。在Android中,提供了以下4种补间动画。
**1.透明度渐变动画**
透明度渐变动画就是通过View组件透明度的变化来实现View的渐隐渐显的效果。它主要通过为动画指定开始时的透明度和结束时的透明度,以及维持时间来创建动画。 表1 定义透明度渐变动画时常用的属性

| 属性 | 描述 |
| android:interpolator | 用于控制动画的变化速度,使得动画效果可以匀速、加速、减速或抛物线速度等各种速度变化,其属性值如表2所示 |
| android:repeatMode | 用于设置动画的重复方式,可选值为reverse(反向)或restart(重新开始) |
| android:repeatCount | 用于设置动画的重复次数,属性可以是代表次数的数值,也可以是infinite(无限循环) |
| android:duration | 用于指定动画的持续时间,单位为毫秒 |
| android:fromAlpha | 用于指定动画开始时的透明度,值为0.0代表完全透明,值为1.0代表完全不透明 |
| android:toAlpha | 用于指定动画结束时的透明度,值为0.0代表完全透明,值为1.0代表完全不透明 |

表2 android:interpolator属性的常用属性值

| 属性值 | 描述 |
| @android:anim/linear_interpolator | 动画一直在做匀速改变 |
| @android:anim/accelerate_interpolator | 动画在开始的地方改变较慢,然后开始加速 |
| @android:anim/decelerate_interpolator | 在动画开始的地方速度改变较快,然后开始 |
| @android:anim/accelerate_decelerate_interpolator | 动画在开始和结束的地方改变速度较慢,在中间的时候加速 |
| @android:anim/cycle_interpolator | 动画循环播放特定的次数,变化速度按正弦曲线改变 |
| @android:anim/bounce_interpolator | 动画结束的地方采用弹球效果 |
| @android:anim/anticipate_overshoot_interpolator | 在动画开始的地方先向后退一小步,再开始动画,到结束的地方再超出一小步,最后回到动画结束的地方 |
| @android:anim/overshoot_interpolator | 动画快速到达终点,并超出一小步最后回到动画结束的地方 |
| @android:anim/anticipate_interpolator | 在动画开始的地方先向后退出一小步,再快速到达动画结束的地方 |

**2.旋转动画**
旋转动画就是通过为动画指定开始时的旋转角度、结束时的旋转角度,以及持续时间来创建动画。在旋转时还可以通过指定轴心点坐标来改变旋转的中心。
表3 定义旋转动画时常用的属性

| 属性 | 描述 |
| android:interpolator | 用于控制动画的变化速度,使得动画效果可以匀速、加速、减速或抛物线速度等各种速度变化,其属性值如表2所示 |
| android:fromDegrees | 用于指定动画开始时旋转的角度 |
| android:toDegrees | 用于指定动画结束时旋转的角度 |
| android:pivotX | 用于指定轴心点x轴的坐标 |
| android:pivotY | 用于指定轴心点y轴的坐标 |
| android:repeatMode | 用于设置动画的重复方式,可选值为reverse(反向)或restart(重新开始) |
| android:repeatCount | 用于设置动画的重复次数,属性可以是代表次数的数值,也可以是infinite(无限循环) |
| android:duration | 用于指定动画的持续时间,单位为毫秒 |

**3.缩放动画**
缩放动画就是通过为动画指定开始时的缩放系数、结束时的缩放系数,以及持续时间来创建动画。在缩放时还可以通过指定轴心点坐标来改变缩放的中心。

| 属性 | 描述 |
| android:interpolator | 用于控制动画的变化速度,使得动画效果可以匀速、加速、减速或抛物线速度等各种速度变化,其属性值如表2所示 |
| android:fromXScale | 用于指定动画开始时水平方向上的缩放系数,值为1.0表示不变化 |
| android:toXScale | 用于指定动画结束时水平方向上的缩放系数,值为1.0表示不变化 |
| android:fromYScale | 用于指定动画开始时垂直方向上的缩放系数,值为1.0表示不变化 |
| android:toYScale | 用于指定动画结束时垂直方向上的缩放系数,值为1.0表示不变化 |
| android:pivotX | 用于指定轴心点x轴的坐标 |
| android:pivotY | 用于指定轴心点y轴的坐标 |
| android:repeatMode | 用于设置动画的重复方式,可选值为reverse(反向)或restart(重新开始) |
| android:repeatCount | 用于设置动画的重复次数,属性可以是代表次数的数值,也可以是infinite(无限循环) |
| android:duration | 用于指定动画的持续时间,单位为毫秒 |

**4.平移动画**
平移动画就是通过为动画指定开始时的位置、结束时的位置,以及持续的时间来创建动画。

| 属性 | 描述 |
| android:interpolator | 用于控制动画的变化速度,使得动画效果可以匀速、加速、减速或抛物线速度等各种速度变化,其属性值如表2所示 |
| android:fromXDelta | 用于指定动画开始时水平方向上的起始位置 |
| android:toXDelta | 用于指定动画结束时水平方向上的起始位置 |
| android:fromYDelta | 用于指定动画开始时垂直方向上的起始位置 |
| android:toYDelta | 用于指定动画结束时垂直方向上的起始位置 |
| android:repeatMode | 用于设置动画的重复方式,可选值为reverse(反向)或restart(重新开始) |
| android:repeatCount | 用于设置动画的重复次数,属性可以是代表次数的数值,也可以是infinite(无限循环) |
| android:duration | 用于指定动画的持续时间,单位为毫秒 |

Android 旋转、平移、缩放和透明度渐变的补间动画的更多相关文章

  1. Android 学习笔记多媒体技术之 Drawable类+Tween(补间动画)+Frame(帧动画)

    学习内容: 1.了解Drawable类的作用 2.如何使用Drawable... 3.了解Tween动画... 4.如何创建和使用Tween动画... 1.Drawable类...   Drawabl ...

  2. Android中的帧动画与补间动画的使用

    前言 在日常开发中,我们有时候须要一些好看的动画效果,这时能够充分利用Android提供的这几种动画来实现. Android提供了3种类型的动画: 补间动画:补间动画能够应用于View,让你能够定义一 ...

  3. Android动画效果之Tween Animation(补间动画)

    前言: 最近公司项目下个版本迭代里面设计了很多动画效果,在以往的项目中开发中也会经常用到动画,所以在公司下个版本迭代开始之前,抽空总结一下Android动画.今天主要总结Tween Animation ...

  4. Android动画主要包含补间动画(Tween)View Animation、帧动画(Frame)Drawable Animation、以及属性动画Property Animation

    程序运行效果图: Android动画主要包含补间动画(Tween)View Animation.帧动画(Frame)Drawable Animation.以及属性动画Property Animatio ...

  5. Android中四种补间动画的使用示例(附代码下载)

    场景 Android中四种补间动画. 透明度渐变动画 旋转动画 缩放动画 平移动画 注: 博客: https://blog.csdn.net/badao_liumang_qizhi关注公众号 霸道的程 ...

  6. android 帧动画,补间动画,属性动画的简单总结

      帧动画——FrameAnimation 将一系列图片有序播放,形成动画的效果.其本质是一个Drawable,是一系列图片的集合,本身可以当做一个图片一样使用 在Drawable文件夹下,创建ani ...

  7. android 补间动画和Animation

    介绍: 补间动画是一种设定动画开始状态.结束状态,其中间的变化由系统计算补充.这也是他叫做补间动画的原因. 补间动画由Animation类来实现具体效果,包括平移(TranslateAnimation ...

  8. Android动画总结#补间动画(Tween Animation/View Animation) #帧动画(Frame Animation/Drawable Animation)#属性动画(PropertyAnimation)

    1.共有三种动画,英文名字多种叫法如下 第一种动画:补间动画(Tween Animation/View Animation) 四个:RotateAnimation旋转. AlphaAnimation透 ...

  9. Android(java)学习笔记199:Android中补间动画(Tween Animation)

    本文主要简单介绍补间动画使用代码实现, 关于使用xml实现补间动画,可以参看:自定义控件三部曲之动画篇(一)——alpha.scale.translate.rotate.set的xml属性及用法 1. ...

随机推荐

  1. Add a try-catch with Mono Cecil

    Adding exception handlers with Mono.Cecil is not difficult, it just requires you to know how excepti ...

  2. Python大数据:信用卡逾期分析

    # -*- coding:utf-8 -*- # 数据集成 import csv import numpy as np import pandas as pd import matplotlib.py ...

  3. sklearn学习笔记(一)——数据预处理 sklearn.preprocessing

    https://blog.csdn.net/zhangyang10d/article/details/53418227 数据预处理 sklearn.preprocessing 标准化 (Standar ...

  4. CRM - 权限

    一.引入权限组件 引入权限组件 rbac settings: 'rbac.apps.RbacConfig', 中间件: 'rbac.service.rbac.ValidPermission', 员工表 ...

  5. 自动化测试学习day4

    主要学习内容:修改文件.集合.函数.模块 修改文件两种方法 修改文件方法一(缺点:代码繁琐,一次性将文件读出,文件过大可能会卡住) with open('geci', 'a+', encoding=' ...

  6. 通过 微软 pai-fs 上传数据到HDFS (Microsoft OpenPAI)

    准备环境 (个人使用记录,方便下次使用查阅~~) 首先保证PAI是登陆状态: 进入GitHub项目所在地址: https://github.com/Microsoft/pai/ 然后切换分支到  具体 ...

  7. 商铺项目(Redis缓存)

    AOF,RDB是两种 redis持久化的机制.用于crash后,redis的恢复. 两种区别就是,AOF是持续的用日志记录写操作,crash后利用日志恢复:RDB是平时写操作的时候不触发写,只有手动提 ...

  8. 【Loadrunner接口测试】什么情况需要区分PC和手机端去做压测?

    1.PC和手机本身访问的都是接口,能有啥不一样的 这个一般看不出来,除非你们开发给APP的接口定义为http://api.mobile.com之类的 网站是网站,APP是APP但是不论是网站还是APP ...

  9. 谈谈ConcurrentHashMap1.7和1.8的不同实现

    知止而后有定,定而后能静,静而后能安,安而后能虑,虑而后能得. ConcurrentHashMap 在多线程环境下,使用HashMap进行put操作时存在丢失数据的情况,为了避免这种bug的隐患,强烈 ...

  10. Hive重写表数据丢失风险记录

    若在Hive中执行INSERT OVERWRITE重写同一个表的数据时,有可能会造成数据丢失. 如 INSERT OVERWRITE TABLE table_name SELECT * FROM ta ...