zoukankan      html  css  js  c++  java
  • Android中的动画

    1、View动画                                                       

    View动画通过对场景里的对象不断做图像变换平移,缩放,旋转,透明度)从而产生动画效果,它是一种渐进式动画。 View动画支持自定义。

    View动画的四种变换效果对应着Animation的四个子类:TranslateAnimation,ScaleAnimation,RotateAnimation和AlphaAnimation。

    自定义动画:只需要继承Animation这个抽象类,然后重写它的initialize和applyTransformation方法,在initialize方法中做一些初始化工作,在applyTransformation中进行相应的矩阵变换。

    LayoutAnimation作用于ViewGroup,为ViewGroup指定一个动画,当ViewGroup的子元素出场时都会具有这种动画效果。

    2、帧动画                                                            

    帧动画通过顺序播放一系列图像从而产生动画效果,可以简单理解为图片切换动画。帧动画属于View动画的一种。系统提供了AnimationDrawable类来使用帧动画。

    帧动画容易引起OOM,使用时尽量避免使用过多尺寸较大的图片。

    3、属性动画                                                         

    属性动画通过动态地改变对象的属性从而达到动画效果,为API11的新特性,在低版本无法直接使用属性动画,但是可以通过兼容库使用它。

    属性动画中有ValueAnimatorObjectAnimatorAnimatorSet等概念,通过它们可以实现绚丽的动画。

    其中ObjectAnimator继承ValueAnimator,AnimatorSet是动画集合。

    4、理解插值器和估值器                                          

    TimeInterpolator中文翻译为时间插值器,它的作用是根据时间流逝的百分比来计算出当前属性值改变的百分比。

    TypeEvaluator的中文翻译为类型估值算法,也叫估值器,它的作用是根据当前属性改变的百分比来计算改变后的属性值。

    属性动画中的插值器和估值器很重要,它们是实现非匀速动画的重要手段。

  • 相关阅读:
    数据库系统概念PDF下载
    数据库系统基础教程PDF下载
    推荐系统技术、评估及高效算法PDF下载
    系统分析与设计方法PDF下载
    像计算机科学家一样思考pythonPDF下载
    学习bashPDF下载
    厚书读薄丨《Vim实用技巧》第一部分 模式
    Code Server 是什么?
    ubuntu磁盘分区
    Linux自学之旅-基础命令(umask默认权限)
  • 原文地址:https://www.cnblogs.com/fankongkong/p/7469940.html
Copyright © 2011-2022 走看看