zoukankan      html  css  js  c++  java
  • android 动画总结一

    一、补间动画

           补间动画就是指开发者指定动画的开始、动画的结束的"关键帧",而动画变化的"中间帧"由系统计算,并补齐。

             补间动画分为四种:平移动画(TranslateAnimation)、缩放动画(ScaleAnimation)、旋转动画(RotateAnimation)、透明度动画(AlphaAnimation)

             注:如何实现此处不细说,

            1、平移动画(TranslateAnimation

                TranslateAnimation(0,500,0,500),参数1:视图在水平方向x 移动的起始值

                                                                                 参数2:视图在水平方向x 移动的结束值

                          参数3:视图在竖直方向y 移动的起始值

                          参数4:视图在竖直方向y 移动的结束值

       2、缩放动画(ScaleAnimation)

        new ScaleAnimation(0,2,0,2,Animation.RELATIVE_TO_SELF,0.5f,Animation.RELATIVE_TO_SELF,0.5f)

                          参数1:动画在水平方向X的起始缩放倍数

                          参数2:动画在水平方向X的结束缩放倍数

                          参数3:动画开始前在竖直方向Y的起始缩放倍数

                          参数4:动画在竖直方向Y的结束缩放倍数

                          参数5:缩放轴点的x坐标的模式

                          参数6:缩放轴点x坐标的相对值

                          参数7:缩放轴点的y坐标的模式

                          参数8:缩放轴点y坐标的相对值

        注:参数5说明: Animation.ABSOLUTE:缩放轴点的x坐标 = View左上角的原点 在x方向 加上参数6数值的点(y方向同理)

                Animation.RELATIVE_TO_SELF:缩放轴点的x坐标 = View左上角的原点 在x方向 加上 自身宽度乘上参数6数值的值(y方向同理)

                Animation.RELATIVE_TO_PARENT:缩放轴点的x坐标 = View左上角的原点 在x方向 加上 父控件宽度乘上参数6数值的值

       3、旋转动画(RotateAnimation

        RotateAnimation(0,270,Animation.RELATIVE_TO_SELF,0.5f,Animation.RELATIVE_TO_SELF,0.5f);

                          参数1. 动画开始时 视图的旋转角度(正数 = 顺时针,负数 = 逆时针) 

                          参数2. 动画结束时 视图的旋转角度(正数 = 顺时针,负数 = 逆时针) 

                          参数3. 旋转轴点的x坐标的模式 

                          参数4. 旋转轴点x坐标的相对值 

                          参数5. 旋转轴点的y坐标的模式 

                          参数6. 旋转轴点y坐标的相对值

        注:参数3:Animation.ABSOLUTE:旋转轴点的x坐标 = View左上角的原点 在x方向 加上 pivotXValue数值的点

             Animation.RELATIVE_TO_SELF:旋转轴点的x坐标 = View左上角的原点 在x方向 加上 自身宽度乘上pivotXValue数值的值

             Animation.RELATIVE_TO_PARENT:旋转轴点的x坐标 = View左上角的原点 在x方向 加上 父控件宽度乘上pivotXValue数值的值

       4、透明度动画(AlphaAnimation)

        new AlphaAnimation(1,0);      参数1. 动画开始时视图的透明度(取值范围: -1 ~ 1) 

                          参数2:动画结束时视图的透明度(取值范围: -1 ~ 1) 

       此时此刻就是重点:   

        说明:TranslateAnimationScaleAnimation、RotateAnimation、AlphaAnimation它们共同的特点是都是 Animation的子类,它们各自没有特别的操作,全部

       借助父类,所以如何运用它们其实就需要看Animation。  

        Animation类

            首先,它有一个AnimationListener接口,是用来监听动画的运行状态的,onAnimationStart监听动画开始状态,onAnimationEnd监听动画结束状态,

          onAnimationRepeat监听动画重复状态。该监听可以实现动画之间交互。

         方法:

          setInterpolator  主要是为动画设置插值器,插值器的种类有很多,主要是让动画在不同的时间节点展示不同的效果,用于丰富动画效果。

         setDuration    主要设置动画运行时间。

         setRepeatMode   设置重复模式,1、Animation.RESTART,从头开始重复。2、Animation.REVERSE,反方向执行

         setRepeatCount   设置重复次数

         setFillAfter    设置动画结束后位置淡出   动画链中用到

         setFillBefore    设置动画开始位置淡出

         setZAdjustment   允许在动画播放期间,调整播放内容在Z轴方向的顺序

         setStartOffset   设置动画启动时间

         restrictDuration  限制动画的运行时间

       暂时用到的就这么多,其他一些get方法也是相对获取一些信息的,这里不做详细的说明。

       

  • 相关阅读:
    node.js入门
    分布式爬虫
    ES6入门
    Vue.js入门
    用scrapy爬取亚马逊网站项目
    垃圾回收器
    HTTP协议详解
    有效的邮箱地址
    C#中正则表达式的使用
    抽象类
  • 原文地址:https://www.cnblogs.com/moyu-z/p/11059912.html
Copyright © 2011-2022 走看看