在android中用原生api实现一系列复杂动画会很麻烦,所以对属性动画进行了一定封装,让使用起来更简单,能够按照人的思维依次编写动画。
简单效果:
使用方法:
添加依赖:dependencies { compile"com.steven:AndroidSequenceaAimations:1.2.0"}
简单用法:
EasyAnimation.with(sequence(
fadeIn(1000),
together(
rotateTo(500,360),scaleTo(500,5).easing(Skill.BackEaseIn)) )).playOn(targetView);
目前支持的api:
瞬时动画:
FlipX:水平翻转
FlipY:垂直翻转
Show:显示
Hide:隐藏
CallFunc:回调接口
时间动画:
FadeIn:透明度渐入
FadeOut:透明度渐出
FadeTo:透明度渐变到指定值
MoveBy:移动指定x、y
MoveTo:移动到指定x、y
MoveXTo:移动到指定x
MoveYTo:移动到指定y
RotateBy:旋转指定水平、垂直方向角度
RotateTo:旋转到指定水平、垂直方向角度
ScaleTo:缩放到指定倍数
DelayTime:延迟指定时间
更新动画:
ColorTo:颜色渐变
ValueIntTo:整形值渐变
ValueFloatTo:浮点值渐变
容器动画(可以包装其他任意动画):
Sequence:串行容器,被包装的动画将会依次执行
Together:并行容器,被包装的动画将会同时执行
Repeat:重复容器,被包装的动画将会重复执行指定次数
RepeatForever:永久重复容器,被包装的动画将会一直重复执行
自定义动画
用户可根据需求自定义各种动画效果,瞬时动画继承自InstantAction,时间动画继承自IntervalAction即可。
关于缓动动画
本库可以与AnimationEasingFunctions库一起使用,该库提供了各种缓动效果,所有的“时间动画”都能使用缓动动画。
使用例子:rotateTo(500,360).easing(Skill.BackEaseIn);