Android动画:这是一份全面 & 详细的动画使用攻略

前言

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

目录


1. 动画类型

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

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

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

2. 视图动画(View Animation)

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

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

2.1 补间动画(Tween Animation)

  • 简介 

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

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

  • 具体使用 
    请看文章Android 动画:手把手教你使用 补间动画

2.2 逐帧动画

  • 简介 

  • 具体使用 
    请看文章Android 逐帧动画:关于 逐帧动画 的使用都在这里了!


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 动画:你真的会使用插值器与估值器吗?(含详细实例教学)
    2. 自定义View的原理,请参考我写的文章: 
      (1)自定义View基础 - 最易懂的自定义View原理系列 
      (2)自定义View Measure过程 - 最易懂的自定义View原理系列 
      (3)自定义View Layout过程 - 最易懂的自定义View原理系列 
      (4)自定义View Draw过程- 最易懂的自定义View原理系列
    3. 自定义View的应用,请参考我写的文章: 
      手把手教你写一个完整的自定义View 
      Path类的最全面详解 - 自定义View应用系列 
      Canvas类的最全面详解 - 自定义View应用系列 
      为什么你的自定义View wrap_content不起作用?

Android动画(1)相关推荐

  1. Android动画效果translate、scale、alpha、rotate详解

    动画类型 Android的animation由四种类型组成 XML中 alpha 渐变透明度动画效果 scale 渐变尺寸伸缩动画效果 translate 画面转换位置移动动画效果 rotate 画面 ...

  2. android jason动画,Android 动画之Lottie动画使用

    Android 动画之Lottie动画使用 一:简介 Lottie是Airbnb开源的一套跨平台的完整解决方案,设计师只需要使用After Effects(简称AE)设计动画之后,使用Lottic提供 ...

  3. android动画的实现原理,Android动画的实现原理 .

    1.动画运行模式 独行模式 中断模式 2.Animation类 每个动画都重载了父类的applyTransformation方法这个方法的主要作用是把一些属性组装成一个Transformation类, ...

  4. Android动画曲线库AndroidEasingFunctions

    Android动画曲线库AndroidEasingFunctions AndroidEasingFunction是基于Easing Function(缓动函数)的Android动画曲线库.它提供了九大 ...

  5. android 动画引擎,一个使用openGL渲染的炫丽Android动画库

    这是一个 android 动画特效库 可以实现各种炫酷动画. github地址: ht t ps:// gith  u b.co m/g pl ib s/an dro id- ma gic-s ur ...

  6. Android 动画分析学习笔记

    一:分类: Android动画分三种:view动画(对场景中的对象不断做图像变换<平移,缩放,旋转,透明度>).帧动画(顺序播放一系列图像产生动画效果).属性动画(动态改变对象属性). 二 ...

  7. Android动画之Tween动画实战

    Android动画分为Tween动画和Frame动画,上一节通过一个实例介绍了Frame动画,本节将介绍Tween动画.Tween可以把对象进行缩小.放大.旋转和渐变等操作. Tween动画有四个主要 ...

  8. Android动画 详解(一 补间动画)

    2019独角兽企业重金招聘Python工程师标准>>> 打算整理下 android动画方面的知识,嗯  开始 一.android补间动画 分为四大类 alpha(透明度渐变).sca ...

  9. Android 动画之ScaleAnimation应用详解

    本节讲解ScaleAnimation 动画在应用中的实现,有需要的朋友可以参考下 android中提供了4中动画: AlphaAnimation 透明度动画效果 ScaleAnimation 缩放动画 ...

  10. Android动画开发——Animation动画效果

    动画类型 Android的animation由四种类型组成 XML中 alpha 渐变透明度动画效果 scale 渐变尺寸伸缩动画效果 translate 画面转换位置移动动画效果 rotate 画面 ...

最新文章

  1. 网络编程学习笔记(SIGPIPE信号触发)
  2. CSAPP第五章就在“扯淡”!
  3. 使用 NCS2 加速推断识别图片
  4. 阿里云MongoDB,一直被模仿,从未被超越
  5. 【详细解析】1033 To Fill or Not to Fill (25 分)
  6. TC SRM 593 DIV2 1000
  7. java 教室借用管理系统_[内附完整源码和文档] 基于JAVA语言的学生选课信息管理系统...
  8. 泛型之类型擦除和桥接方法
  9. java泊松分布_Java中利用Math.random()产生服从泊松分布的随机数
  10. [Java] 蓝桥杯ALGO-143 算法训练 字符串变换
  11. Atitit recv https req post code 接受https请求// npm install axios// 安装依赖:npm install body-parse
  12. qq安全使用NTFS权限设置法
  13. 【网络通信 -- 直播】网络通信协议简介 -- RTP 协议的 H264 封包
  14. Java程序员如何通过阿里、百度的招聘面试
  15. win10使用VMware Workstations安装CentOS
  16. SyntaxError: Invalid regular expression: invalid group specifier name
  17. win10计算机用户名修改密码,win10怎么修改登录用户名 win10修改开机密码的详细教程...
  18. 提取PDF文件里面的图片
  19. 微信小程序上滑加载下拉刷新(onscrollLower)分批加载数据 下篇
  20. 安卓备份文件提取 .bak文件解包 abe.jar

热门文章

  1. Linux内核分析 - 网络[十二]:UDP模块 - socket
  2. g2o中 EdgeSE3Expmap类型Jacobian的计算
  3. 嵌入式Linux系统编程学习之三vi编辑器
  4. 菜鸟学习笔记:Java基础篇5(抽象类与接口、回调函数、内部类)
  5. Spring MVC 原理 - DispatcherServlet调用完整过程
  6. ORACLE RAC中的oc4j和gsd资源以及RAC相关的进程
  7. Lucene.Net+盘古分词-开发自己的搜索引擎
  8. 一道面试题及其扩展,求好解法
  9. How to create a hyperlink in SQL Server Reporting Services
  10. 读书笔记系列--《理解专业程序员》tips