android动画类型有哪几种,Android动画概念大揭秘

前言

说起Android里面的动画,我可能会立马想起平移、旋转、渐变、缩放等动画效果,但是对于他们的属性就记的不太清了,知道的都是皮毛而且很容易忘记,每次需要用到的时候总要去baidu或者google,完全无法做到灵活应用,信手拈来。所以抽时间重新温故了一下动画相关的知识,把相关知识点记录下来,所谓好记性不如烂笔头

为了更好的记忆Android动画,我会给自己提出下面几个问题:

Android提供了几种动画类型?

他们分别是什么,有什么意义?

不同类型之间有什么区别?

分别适用于什么样的场景?

带着这几个问题(可能还有其他的问题,你可以来补充),我们再来学习Android动画...

Android提供了几种动画

我画了一下Android动画关系图

db1291bd34b6

image

从上图可以看得出,我们可以理解Android给我们提供了两种动画类型,一种是View Animation,一种是Property Animtion。

也可以分为三类,它们分别是Tween Animation、Frame Animation以及Property Animtion

哪些类型,有什么意义

View Animation

View Animtion从字面是可以称作视图动画(也可以叫传统动画),主要是针对控件进行动画操作,它是Andorid一出现就引入的。

Property Animtion

View Animtion称作属性动画,主要是控制改变控件属性值来达到动画效果,是Android 3.0时引入了

Tween Animation

Tween Animation称作补间动画,顾名思义,补间动画是通过改变控件的大小、颜色、位置、透明度,从而实现动画效果。图表中Tween Animation下面的四种动画类型就分别代表渐变(alpha)、旋转(rotate)、缩放(scale)、平移(translate)

Frame Animation

Frame Animation被称作逐帧动画,经常也被叫成Drawable Animation,通过顺序播放事先准备好的图片从而实现动画效果,类似于电影放映效果

ValueAnimator

顾名思义,ValueAnimator,不会对控件做任何操作,我们可以给它设定从哪个值运动到哪个值,通过监听这些值的渐变过程来自己操作控件

ObjectAnimator

ObjectAnimator 是派生自 ValueAnimator 的,所以 ValueAnimator 中所能使用的方法,在 ObjectAnimator 中都可以正常使用ValueAnimator只能对数值对动画计算,而ObjectAnimator能让动画直接与对应控件相关联。

不同类型之间有什么区别

通常说动画之间的区别主要是比较View Animation 和 Property Animation。

View Animation是API 1的时候就引入了,而Property Animation是从API 11即Android3.0开始才引入。

View Animation主要操作的视图控件,而Propety Animation主要操作的是控件内部的属性(举个例子:控件的点击事件,View Animation点击区域是在控件的初始位置,而Property Animation是在最后停留的位置)

View Animation 在包 android.view.animation 中,而 Property Animation API 在包 android.animation 中

Property Animation基于Animator和AnimatorSet的类结构,而View Animation则基于Animation和AnimationSet的类结构

Property Animation的XML声明文件存放在res/animator目录下,而View Animation则存放在res/anim目录

适用场景

Tween Animation

一般进行平移,缩放,渐变、旋转操作,比如启动页渐入渐出动画、Activity页面进入和退出动画、对话框从底部弹出动画等

如果是一般的动画,使用Tween Animation基本上都能满足我们的需求

Frame Animation

帧动画,从名字也能看出那些地方可以使用,就像Flash一样,需要一帧一帧的显示一系列图片,连续起来就是动画效果

通常使用的场景是请求网络的等待进度、下拉刷新的等待进度等

或者可以理解为如果是需要用多张图片组合起来的动画都是通过Frame Animation实现的

Property Animtion

属性动画实现的相对比较复杂的动画效果。当然,Tween Animation的效果他基本上都能实现

比如带百分比的圆形进度条、控件背景颜色切换闪烁等等

结束语

本篇文章主要是对Android的动画的概念进行了一个总结,个人水平有限,可能总结的不够完善,欢迎补充。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值