Android动画,从洪荒时代到豆蔻年华

Android动画从最初的帧动画、tween动画,到后来的property动画,再到现在的Transitions动画、Vector动画、Materail design,Android的动画逐渐从洪荒年代走进了自己的豆蔻年华。如果把Android的动画展开详细的讲,将是一个浩大的工程,本文只介绍基础知识,并推荐相关的阅读,感兴趣的小伙伴可以继续深入学习。本文首先简单介绍一下到目前为止用到的主要动画类型,然后在介绍一些实现动画的一些基本知识技巧

基本动画类型

1. 帧动画

帧动画类似于胶片电影,把一帧帧图像连续播放即可形成一个连续的动画,这也是最简单的动画。在使用上一般有两种,直接在xml中定义或者在代码中code。Android帧动画文中介绍了帧动画的基本用法。

2. Tween动画

Tween动画在应用中经常用到,可以完成一些基本的动画,如旋转、移动、缩放、透明度等。Tween动画中用到了插值器,插值器和估值器一文很好地介绍了基本知识。Tween动画使用中介绍了Tween的基本用法。

3.property属性动画

property相对于帧动画和Tween动画来讲基本就是bug级别的存在,鸿洋大神的两篇文章详细介绍了property动画:Android 属性动画(Property Animation) 完全解析 (上)Android 属性动画(Property Animation) 完全解析 (下)。文中介绍了ObjectAnimator和ValueAnimator的功能,此处结合插值器和估值器,可以很好地理解文中的demo。属性动画的使用文中也介绍了属性动画的相关。

4.Transitions动画

从material design开始,Google推出了一些支持包用于支持其动画实现。Transitions动画文中进行了详细介绍,并提供了Github兼容低版本安卓,实现了炫酷的效果。如果需要做一些小清新的app开发,可以很开心地使用,效果不错。

5. Vector动画

Android Vector曲折的兼容之路中详细介绍了Vector动画需要用到的工具,需要填的坑,以及基础的用法,并提供了demo,Vector动画用起来非常的简单,而效果又非常好,个人认为是一个发展的方向,但是使用时要注意效率问题,合理使用。当然google之后应该也会在这一方面继续加强。

技巧

这部分内容比较散,可能会持续更新……

1. 贝赛尔曲线

贝赛尔曲线在计算机图形学中用的很广泛,Android提供了二阶、三阶贝塞尔曲线,结合path可以非常容易的绘制漂亮的曲线。

在实现动画的时有时需要让View顺着一定的Path移动,很多时候其实就是使用了贝塞尔曲线来实现。贝塞尔曲线在Android中的应用

2.Path和PathMeasure的使用

PathMeasure之迷径追踪文中介绍了PathMeasure的使用,非常好的一篇文章,但是个人认为如果使用Vector动画来实现可能更简单,但是使用Vector对动画的控制性要弱的多。如果一个动画要使用在多个View上,使用PathMeasure之迷径追踪文中提到方法非常有效。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 174,650评论 25 709
  • 1 背景 不能只分析源码呀,分析的同时也要整理归纳基础知识,刚好有人微博私信让全面说说Android的动画,所以今...
    未聞椛洺阅读 2,777评论 0 10
  • 第256天~ 感觉生活在这个机关算尽的现实生活里,人人都在为自己的利益绞尽脑汁,所谓的真情实义,在“钱”字面前都会...
    法斗SEVEN阅读 311评论 0 0
  • 着装可以使人变幻心情,养成良好的着装习惯既可增加好感与观感,又可提升自我品质 不同的穿着会有不同的时代感,每个时代...
    风中雨s阅读 525评论 0 0
  • 曾经在医院工作了十几年的我,亲眼目睹了一些生命的离去,也会在别人的眼泪中悲伤,但是当这些故事将要发生在自己身上的时...
    飞驰的风阅读 307评论 4 0