Android 动画:这是一份详细 & 清晰的 动画学习指南

11,972

前言

  • 动画的使用 是 Android 开发中常用的知识
  • 可是动画的种类繁多、使用复杂,每当需要 采用自定义动画 实现 复杂的动画效果时,很多开发者就显得束手无策
  • 本文将献上一份Android动画的全面介绍攻略,包括动画的种类、使用、原理等,能让你更好地掌握动画 从而实现更加复杂的动画效果

目录

示意图


1. 动画类型

  • Android动画分为两大类:视图动画 & 属性动画,具体如下:

其中,视图动画又分为:补间动画 & 逐帧动画

动画类型

  • 下面。我将详细介绍这两大类、三种动画的使用 & 原理

2. 视图动画(View Animation)

  • 作用对象:视图(View
  • 具体分类:补间动画 & 逐帧动画

下面会详细介绍这两种视图动画

##2.1 补间动画(Tween Animation)

  • 简介

    示意图

  • 分类 根据不同的动画效果,补间动画分为4种动画,具体如下图

不同类型的动画对应于不同的子类

示意图


2.2 逐帧动画


3. 属性动画

3.1 为什么要使用属性动画

  • 属性动画(Property Animation)是在 Android 3.0API 11)后才提供的一种全新动画模式

  • 那么为什么要提供属性动画(Property Animation)?

  • 具体请看下图

示意图

3.2 具体介绍

  • 简介

    示意图

  • 具体使用 属性动画的使用类主要是:ValueAnimator 类 & ObjectAnimator 类,具体介绍如下

    主要使用类

更加详细使用,请看文章:Android 属性动画:这是一篇很详细的 属性动画 总结&攻略


4. 动画 总结 & 对比

4.1 总结

示意图

4.2 两类动画的区别

两类动画的根本区别在于:是否改变动画本身的属性

  • 视图动画:无改变动画的属性 因为视图动画在动画过程中仅对图像进行变换,从而达到了动画效果

变换操作包括:平移、缩放、旋转和透明

  • 属性动画:改变了动画属性 因属性动画在动画过程中对动态改变了对象属性,从而达到了动画效果

  • 特别注意 使用视图动画时:无论动画结果在哪,该View的位置不变 & 响应区域都是在原地,不会根据结果而移动; 而属性动画 则会通过改变属性 从而使动画移动


5. 插值器 & 估值器

5.1 简介

示意图

5.2 具体使用

请看文章:Android 动画:你真的会使用插值器与估值器吗?(含详细实例教学)


6. 使用问题 & 建议

  • 在使用动画时,需注意许多问题
  • 下面,我将全面介绍动画过程中的使用问题 & 建议
    示意图

7. 总结

  • 本文对Android 动画进行了详细分析,相信通过本文你已经能实现复杂的动画效果
  • 关于Android动画的系列文章
  1. 动画的使用,请参考文章:

Android 属性动画:这是一篇很详细的 属性动画 总结&攻略

Android 动画:手把手教你使用 补间动画

Android 逐帧动画:关于 逐帧动画 的使用都在这里了!

Android 动画:你真的会使用插值器与估值器吗?(含详细实例教学)

  1. 自定义View的原理,请参考我写的文章:

    (1)自定义View基础 - 最易懂的自定义View原理系列

    (2)自定义View Measure过程 - 最易懂的自定义View原理系列

    (3)自定义View Layout过程 - 最易懂的自定义View原理系列

    (4)自定义View Draw过程- 最易懂的自定义View原理系列

  2. 自定义View的应用,请参考我写的文章:

    手把手教你写一个完整的自定义View

    Path类的最全面详解 - 自定义View应用系列

    Canvas类的最全面详解 - 自定义View应用系列

    为什么你的自定义View wrap_content不起作用?


请点赞!因为你们的赞同/鼓励是我写作的最大动力!


欢迎关注carson_ho的微信公众号

示意图

示意图