分享

Android属性动画

 Dragon_chen 2017-11-05
Android属性动画与老版View动画不同是直接改变坐标的。
执行属性动画的三种方式

ViewPropertyAnimator 通过View的animate()方法得到这个对象,再使用这个对象去做平移,旋转,缩放等动画。
改变多个属性,直接链式调用。

ObjectAnimator 自定义控件做属性动画需要提供该属性的getter和settter方法。
ObjectAnimator可以设置动画属性计算器TypeEvaluator来给动画属性插值。TypeEvaluator是一个父类,ArgbEvaluator继承自它,也可以自定义一个Evaluator继承自TypeEvaluator实现动画属性计算器。
改变多个属性需要使用PropertyValuesHolder类,通过ObjectAnimator.ofPropertyValuesHolder()方法混合多个holder
改变多个属性都是同一时间开始,要依次执行不同属性动画,则需要使用AnimatorSet混合多个动画

ViewAnimator 是上面两个类的父类,用来计算属性值。
属性动画的几个常用方法
设置动画时长 setDuration()
设置动画速度 setInterpolator() AccelerateDecelerateInterpolator先加速后减速 LinearInterpolator匀速 AccelerateInterpolator持续加速 DecelerateInterpolator持续减速 AnticipateInterpolator加速开始向加速逆方向反弹 OvershootInterpolator加速结尾向加速方向反弹 BounceInterpolator加速结尾向加速方向逆方向反弹 CycleInterpolator会回弹回来
设置监听器 ViewPropertyAnimator.setUpdateListener(),ObjectAnimator.addUpdateListener()参数都是AnimatorUpdateListener类型


    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多