Animati**
一、Animati**介绍
Animati**是一个实现android UI界面动画效果的API,Animati**提供了一系列的动画效果,可以进行旋转、缩放、淡入淡出等,这些效果可以应用在绝大多数的控件中。
二、Animati**的分类
Animati**从总体上可以分为两大类:
1.Tweened Animati**:该类Animati**提供了旋转、移动、伸展和淡出等效果。Alpha——淡入淡出,Scale——缩放效果,Rotate——旋转,Translate——移动效果。
2.Frame-by-frame Animati**:这一类Animati**可以创建一个Drawable序列,这些Drawable可以按照指定的时间间歇一个一个的显示。
三、Animati**的使用方法(代码中使用)
Animati** extends Object implements Cloneable
使用TweenedAnimati**的步骤:
1.创建一个Animati**et对象(Animation子类);
2.增加需要创建相应的Animation对象;
3.更加项目的需求,为Animation对象设置相应的数据;
4.将Animatin对象添加到Animati**et对象当中;
5.使用控件对象开始执行Animati**et。
Tweened Animati**的分类
1、Alpha:淡入淡出效果
2、Scale:缩放效果
3、Rotate:旋转效果
4、Translate:移动效果
Animation的四个子类:
AlphaAnimation、TranslateAnimation、ScaleAnimation、RotateAnimation
四、具体实现
1、setDuration(long durationMills)
设置动画持续时间(单位:毫秒)
2、setFillAfter(Boolean fillAfter)
如果fillAfter的值为true,则动画执行后,控件将停留在执行结束的状态
3、setFillBefore(Boolean fillBefore)
如果fillBefore的值为true,则动画执行后,控件将回到动画执行之前的状态
4、setStartOffSet(long startOffSet)
设置动画执行之前的等待时间
5、setRepeatCount(int repeatCount)
设置动画重复执行的次数
在代码中使用Animati**可以很方便的调试、运行,但是代码的可重用性差,重复代码多。同样可以在xml文件中配置Animati**,这样做可维护性变高了,只不过不容易进行调试。
一、在xml中使用Animati**步骤
1.在res文件夹下建立一个anim文件夹;
2.创建xml文件,并首先加入set标签,更改标签如下:
3.在该标签当中加入rotate,alpha,scale或者translate标签;
4.在代码当中使用AnimationUtils当中装载xml文件,并生成Animation对象。因为Animation是Animati**et的子类,所以向上转型,用Animation对象接收。
欢迎光临 SuperIC社区_ (/) | Powered by Discuz! X3.3 |