一、补间动画

补间动画就是指开发者指定动画的开始、动画的结束的"关键帧",而动画变化的"中间帧"由系统计算,并补齐。

补间动画分为四种:平移动画(TranslateAnimation)、缩放动画(ScaleAnimation)、旋转动画(RotateAnimation)、透明度动画(AlphaAnimation)

注:如何实现此处不细说,

1、平移动画(TranslateAnimation

TranslateAnimation(0,500,0,500),参数1:视图在水平方向x 移动的起始值

参数2:视图在水平方向x 移动的结束值

参数3:视图在竖直方向y 移动的起始值

参数4:视图在竖直方向y 移动的结束值

2、缩放动画(ScaleAnimation)

new ScaleAnimation(0,2,0,2,Animation.RELATIVE_TO_SELF,0.5f,Animation.RELATIVE_TO_SELF,0.5f)

参数1:动画在水平方向X的起始缩放倍数

参数2:动画在水平方向X的结束缩放倍数

参数3:动画开始前在竖直方向Y的起始缩放倍数

参数4:动画在竖直方向Y的结束缩放倍数

参数5:缩放轴点的x坐标的模式

参数6:缩放轴点x坐标的相对值

参数7:缩放轴点的y坐标的模式

参数8:缩放轴点y坐标的相对值

注:参数5说明: Animation.ABSOLUTE:缩放轴点的x坐标 = View左上角的原点 在x方向 加上参数6数值的点(y方向同理)

            Animation.RELATIVE_TO_SELF:缩放轴点的x坐标 = View左上角的原点 在x方向 加上 自身宽度乘上参数6数值的值(y方向同理)

            Animation.RELATIVE_TO_PARENT:缩放轴点的x坐标 = View左上角的原点 在x方向 加上 父控件宽度乘上参数6数值的值

3、旋转动画(RotateAnimation

RotateAnimation(0,270,Animation.RELATIVE_TO_SELF,0.5f,Animation.RELATIVE_TO_SELF,0.5f);

                     参数1. 动画开始时 视图的旋转角度(正数 = 顺时针,负数 = 逆时针) 

                      参数2. 动画结束时 视图的旋转角度(正数 = 顺时针,负数 = 逆时针) 

                      参数3. 旋转轴点的x坐标的模式 

                      参数4. 旋转轴点x坐标的相对值 

                      参数5. 旋转轴点的y坐标的模式 

                      参数6. 旋转轴点y坐标的相对值

注:参数3:Animation.ABSOLUTE:旋转轴点的x坐标 = View左上角的原点 在x方向 加上 pivotXValue数值的点

         Animation.RELATIVE_TO_SELF:旋转轴点的x坐标 = View左上角的原点 在x方向 加上 自身宽度乘上pivotXValue数值的值

         Animation.RELATIVE_TO_PARENT:旋转轴点的x坐标 = View左上角的原点 在x方向 加上 父控件宽度乘上pivotXValue数值的值

4、透明度动画(AlphaAnimation)

new AlphaAnimation(1,0);      参数1. 动画开始时视图的透明度(取值范围: -1 ~ 1) 

                      参数2:动画结束时视图的透明度(取值范围: -1 ~ 1)

此时此刻就是重点:

说明:TranslateAnimation、ScaleAnimation、RotateAnimation、AlphaAnimation它们共同的特点是都是 Animation的子类,它们各自没有特别的操作,全部

借助父类,所以如何运用它们其实就需要看Animation。

Animation类

首先,它有一个AnimationListener接口,是用来监听动画的运行状态的,onAnimationStart监听动画开始状态,onAnimationEnd监听动画结束状态,

onAnimationRepeat监听动画重复状态。该监听可以实现动画之间交互。

方法:

setInterpolator  主要是为动画设置插值器,插值器的种类有很多,主要是让动画在不同的时间节点展示不同的效果,用于丰富动画效果。

setDuration    主要设置动画运行时间。

setRepeatMode   设置重复模式,1、Animation.RESTART,从头开始重复。2、Animation.REVERSE,反方向执行

setRepeatCount   设置重复次数

setFillAfter    设置动画结束后位置淡出   动画链中用到

setFillBefore    设置动画开始位置淡出

setZAdjustment   允许在动画播放期间,调整播放内容在Z轴方向的顺序

setStartOffset   设置动画启动时间

restrictDuration  限制动画的运行时间

暂时用到的就这么多,其他一些get方法也是相对获取一些信息的,这里不做详细的说明。

android 动画总结一的更多相关文章

  1. Android动画效果之自定义ViewGroup添加布局动画

    前言: 前面几篇文章介绍了补间动画.逐帧动画.属性动画,大部分都是针对View来实现的动画,那么该如何为了一个ViewGroup添加动画呢?今天结合自定义ViewGroup来学习一下布局动画.本文将通 ...

  2. Android动画效果之Property Animation进阶(属性动画)

    前言: 前面初步认识了Android的Property Animation(属性动画)Android动画效果之初识Property Animation(属性动画)(三),并且利用属性动画简单了补间动画 ...

  3. Android动画效果之初识Property Animation(属性动画)

    前言: 前面两篇介绍了Android的Tween Animation(补间动画) Android动画效果之Tween Animation(补间动画).Frame Animation(逐帧动画)Andr ...

  4. Android动画效果之Frame Animation(逐帧动画)

    前言: 上一篇介绍了Android的Tween Animation(补间动画) Android动画效果之Tween Animation(补间动画),今天来总结下Android的另外一种动画Frame ...

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

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

  6. Android动画

    [浅谈Android动画] 总共四种:Tween Animation变换动画.Frame Animation帧动画 Layout Animation布局动画.Property Animation 属性 ...

  7. Android动画学习(二)——Tween Animation

    前两天写过一篇Android动画学习的概述,大致的划分了下Android Animation的主要分类,没有看过的同学请移步:Android动画学习(一)——Android动画系统框架简介.今天接着来 ...

  8. Android动画学习(一)——Android动画系统框架简介

    2015-11-09补充:Drawable Animation极有可能是Frame Animation 这几天在找工作,面试的时候被问到了Android动画,之前完全没接触过这部分,直接给懵了,当然其 ...

  9. Android动画的理解

    基础知识 在我们开始讲Android动画这个知识点之前,我们了解下相应的基础知识点. Shape篇 一般用Shape定义的XML文件是存放在Drawable目录下,广泛应用于在Button.TextV ...

  10. Android动画之淡入淡出

    为了更好的说明Android动画的淡入淡出效果,这里以一个场景为例: 界面上有两个View 控件,两个View交替显示,当一个View淡入显示,另一个View淡出不可见. 我们把当前要显示的View叫 ...

随机推荐

  1. 泡泡一分钟: A Linear Least Square Initialization Method for 3D Pose Graph Optimization Problem

    张宁 A Linear Least Square Initialization Method for 3D Pose Graph Optimization Problem "链接:https ...

  2. 零基础学Python-第二章 :Python基础语法-04.Python程序的书写规则

    #号后面的都是注释 import是导入一个模块 结束

  3. iOS 控制输入框的字数?(textFliedView,textFlied等)

    //控制输入框的字数 - (void)textViewDidChange:(UITextView *)textView { NSInteger number = [textView.text leng ...

  4. 报错:Configured broker.id 68 doesn't match stored broker.id 113 in meta.properties

    报错背景: CDH中安装完成kafka的组件后不能成功启动,发现UI界面中的broker.id和服务器中的broker.id不一致, 因此更改了服务器中broker.id 但是更改完成之后还是报错. ...

  5. 一些Python中的二维数组的操作方法

    一些Python中的二维数组的操作方法 这篇文章主要介绍了一些Python中的二维数组的操作方法,是Python学习当中的基础知识,需要的朋友可以参考下 需要在程序中使用二维数组,网上找到一种这样的用 ...

  6. 改进初学者的PID-手自动切换

    最近看到了Brett Beauregard发表的有关PID的系列文章,感觉对于理解PID算法很有帮助,于是将系列文章翻译过来!在自我提高的过程中,也希望对同道中人有所帮助.作者Brett Beaure ...

  7. 今天被这个BDE错误搞了半天,不过终于好了,分享一下

    今天正编译程序时,突然就报了这个错误出来,重启电脑都没用,多亏网上高手指教,先把解决方案列于下,供受此累得朋友查阅,自己也留底供查找:"Shared memory conflict ($21 ...

  8. LODOP打印超文本字符串拼接2 单选选择css样式表格

    之前的相关字符串拼接的博文:LODOP打印超文本字符串拼接1 固定表格填充数值之前博文介绍过,字符串可以随意拼接,只要最后组织成的字符串是自己需要的超文本就可以了,前面还有一篇也是拼接样式的:Lodo ...

  9. 未找到路径“ ”的控制器或该控制器未实现 IController。

    未找到路径“/Platform/t_spay_sub_mchno/Index”的控制器或该控制器未实现 IController. 从SVN复制了份代码修改,然后找不到控制器和页面.在项目属性-WEB- ...

  10. AWS 身份及验证服务(四)

    IAM 概述 集中管理访问AWS资源的访问权限和用户身份认证 支持联合访问管理,支持LADP第三方服务 (Identity Provider) 是非区域相关的服务,全局有效 创建用户.组和角色以应用策 ...