Android View动画框架
原理:每次绘制视图时View所在的View Group中的drawChild函数获取该View的Animation的Transformation值,然后调用canvas.concat(transformToApply.getMatrix()),通过矩阵运算完成动画帧。
视图动画:
AlphaAnimation(透明度动画):
图 1RotateAnimation(旋转动画):
图 2TranslateAnimation(位移动画):
图 3ScaleAnimation(缩放动画):
图 4动画合集:通过AnimationSet将动画以组合形式展现
图 5属性动画:
ObjectAnimator:创建一个ObjectAnimator只需通过其静态工厂类直接返回ObjectAnimator对象。
图 6注意:在使用ObjectAnimator时,要操纵的属性必须具有get、set方法,否则ObjectAnimator无法起效。如果属性没有get、set方法,也可通过自定义一个属性类或者包装类来间接给属性增加get、set方法,使用时只需操纵包装类就可调用方法。
图 7图 7-2
网友评论