• android的三种动画


    1.view animation  视图动画(补间动画)

    只能被用来设置View的动画。

    可以使用xml或者java 代码进行实现

    xml放在 res/anim/ 下

    android:duration 动画持续时间,以毫秒为单位
    android:fillAfter 如果设置为true,控件动画结束时,将保持动画最后时的状态
    android:fillBefore 如果设置为true,控件动画结束时,还原到开始动画前的状态
    android:fillEnabled 与android:fillBefore 效果相同,都是在动画结束时,将控件还原到初始化状态
    android:repeatCount 重复次数
    android:repeatMode 重复类型,有reverse和restart两个值,reverse表示倒序回放,restart表示重新放一遍,必须与repeatCount一起使用才能看到效果。因为这里的意义是重复的类型,即回放时的动作。
    android:interpolator 设定插值器,其实就是指定的动作效果,比如弹跳效果等,

     

    java类名xml关键字描述信息
    AlphaAnimation 放置在res/anim/目录下渐变透明度动画效果
    RotateAnimation 放置在res/anim/目录下画面转移旋转动画效果
    ScaleAnimation 放置在res/anim/目录下渐变尺寸伸缩动画效果
    TranslateAnimation 放置在res/anim/目录下画面转换位置移动动画效果
    AnimationSet 放置在res/anim/目录下一个持有其它动画元素alpha、scale、translate、rotate或者其它set元素的容器

     

    xml属性java方法解释
    android:detachWallpapersetDetachWallpaper(boolean)是否在壁纸上运行
    android:durationsetDuration(long)动画持续时间,毫秒为单位
    android:fillAftersetFillAfter(boolean)控件动画结束时是否保持动画最后的状态
    android:fillBeforesetFillBefore(boolean)控件动画结束时是否还原到开始动画前的状态
    android:fillEnabledsetFillEnabled(boolean)与android:fillBefore效果相同
    android:interpolatorsetInterpolator(Interpolator)设定插值器(指定的动画效果,譬如回弹等)
    android:repeatCountsetRepeatCount(int)重复次数
    android:repeatModesetRepeatMode(int)重复类型有两个值,reverse表示倒序回放,restart表示从头播放
    android:startOffsetsetStartOffset(long)调用start函数之后等待开始运行的时间,单位为毫秒
    android:zAdjustmentsetZAdjustment(int)表示被设置动画的内容运行时在Z轴上的位置(top/bottom/normal),默认为normal

     Alpha属性详解  透明度

    xml属性java方法解释
    android:fromAlphaAlphaAnimation(float fromAlpha, …)动画开始的透明度(0.0到1.0,0.0是全透明,1.0是不透明)
    android:toAlphaAlphaAnimation(…, float toAlpha)动画结束的透明度,同上

     Rotate属性详解  旋转

    xml属性java方法解释
    android:fromDegreesRotateAnimation(float fromDegrees, …)旋转开始角度,正代表顺时针度数,负代表逆时针度数
    android:toDegreesRotateAnimation(…, float toDegrees, …)旋转结束角度,正代表顺时针度数,负代表逆时针度数
    android:pivotXRotateAnimation(…, float pivotX, …)缩放起点X坐标(数值、百分数、百分数p,譬如50表示以当前View左上角坐标加50px为初始点、50%表示以当前View的左上角加上当前View宽高的50%做为初始点、50%p表示以当前View的左上角加上父控件宽高的50%做为初始点)
    android:pivotYRotateAnimation(…, float pivotY)缩放起点Y坐标,同上规律

    Scale属性详解  缩放

    xml属性java方法解释
    android:fromXScaleScaleAnimation(float fromX, …)初始X轴缩放比例,1.0表示无变化
    android:toXScaleScaleAnimation(…, float toX, …)结束X轴缩放比例
    android:fromYScaleScaleAnimation(…, float fromY, …)初始Y轴缩放比例
    android:toYScaleScaleAnimation(…, float toY, …)结束Y轴缩放比例
    android:pivotXScaleAnimation(…, float pivotX, …)缩放起点X轴坐标(数值、百分数、百分数p,譬如50表示以当前View左上角坐标加50px为初始点、50%表示以当前View的左上角加上当前View宽高的50%做为初始点、50%p表示以当前View的左上角加上父控件宽高的50%做为初始点)
    android:pivotYScaleAnimation(…, float pivotY)缩放起点Y轴坐标,同上规律

    Translate属性详解  移动

    xml属性java方法解释
    android:fromXDeltaTranslateAnimation(float fromXDelta, …)起始点X轴坐标(数值、百分数、百分数p,譬如50表示以当前View左上角坐标加50px为初始点、50%表示以当前View的左上角加上当前View宽高的50%做为初始点、50%p表示以当前View的左上角加上父控件宽高的50%做为初始点)
    android:fromYDeltaTranslateAnimation(…, float fromYDelta, …)起始点Y轴从标,同上规律
    android:toXDeltaTranslateAnimation(…, float toXDelta, …)结束点X轴坐标,同上规律
    android:toYDeltaTranslateAnimation(…, float toYDelta)结束点Y轴坐标,同上规律

     使用

    1. Animation animation = AnimationUtils.loadAnimation(this, R.anim.alphaanim);
    2. btn.setAnimation(animation);

    2.frame animation 帧动画 多张图片形成的效果

    使用xml描述动画  xml放在res/drawable/下

    3.property animation 属性动画

    这种动画可以设置给任何Object,包括那些还没有渲染到屏幕上的对象。这种动画是可扩展的,可以让你自定义任何类型和属性的动画

  • 相关阅读:
    Ubuntu自启动设置
    【CPP知识】try-catch处理内存分配失败的异常
    SQL(Structured Query Language)简介和常见 SQL 命令示例
    线上接口流量突增,快要扛不住了
    【单目测距】单目相机测距(三)
    Spring源码级笔记(一)
    【C语言】初阶C语言零碎知识点(查漏补缺)
    头歌初识redis答案
    Redis的底层数据结构分析
    Java基础面试-重载和重写的区别
  • 原文地址:https://blog.csdn.net/xiaowang_lj/article/details/128004559