Android 动画以及自定义动画

我们都知道Android 动画分为 帧动画,补间动画,属性动画
那么它们有什么区别呢,我们先了解这三个动画的定义和实现方式

一 帧动画

需要制定好动画每一帧,系统一帧一帧的播放图片。
实现:
1 代码实现: AnimationDrawable
2 布局实现: 直接在工程drawable目录新建animation-list标签

二 补间动画

View动画定义了渐变Alpha、旋转Rotate、缩放Scale、平移Translate四种基本动画,并且通过这四种基本动画的组合使用,可以实现多种交互效果.
实现:
1 代码实现: AlphaAnimation、RotateAnimation、ScaleAnimation、TranslateAnimation四个动画类
组合 : AnimationSet
2 布局实现: 直接在工程drawable目录新建animation-list标签,然后AnimationUtils.loadAnimation() 加载动画

三 属性动画

就是通过改变view对象Object的属性来实现动画的过程。
实现:
1 代码实现: ObjectAnimator是最常用的属性动画执行类。通过AnimatorSet创建动画集.
2 布局实现: 直接在工程drawable目录新建动画xml, set标签包括objectAnimator实现动画集,和objectAnimator标签单独使用,然后AnimatorInflater.loadAnimator调用

三种动画介绍完了,那么下面简单介绍下 自定义动画的插值器和估值器

插值器的作用是:

决定值的变化规律(如:匀速、加速),即决定的是变化趋势

估值器的作用是:

决定动画的具体变化数值
实现大体流程:
自定义插值器:补间动画和属性动画实现的接口有些许不动
1 补间动画: 实现 Interpolator接口;
属性动画: 实现TimeInterpolator接口
2 并且重写getInterpolation().

自定义估值器
自定义估值器需要实现 TypeEvaluator接口并重写 evaluate(), 其中evaluate是插值器的方法 插值器里面 getInterpolator 的返回值.

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

scenelyLiu

您的鼓励将是我创作的动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值