Animations的使用(一)

Animation的分类:

一,Tweened Animations。旋转,移动,伸展,淡出等效果。

二,Frame-by-Frame Animations。可创建一个Drawable序列,按照指定的时间间隔一个个显示。


Tweened Animations分类:

1,Alpha:淡入淡出

2,Scale:缩放效果

3,Rotate:旋转效果

4,Translate:移动效果


使用Tweened Animations的步骤:

1,创建一个AnimationSet对象。顾名思义,就是可以把几个animation动作放到一个set里面。

2,根据需要创建相应的Animation对象。Animation的四个子类:Alpha,Scale,Rotate,Translate。

3,根据软件动画的需求,为Animation对象设置相应的数据。

4,将Animation对象添加到AnimationSet对象中去。

5,使用控件对象开始执行AnimationSet。


代码部分(Alpha为例):

//创建AnimationSet对象
AnimationSet animationSet=new AnimationSet(true);
//创建Animation对象
AlphaAnimation alphaAnimation=new AlphaAnimation(1, 0);
//设置持续时间
alphaAnimation.setDuration(1000);
//把alpha加入到animationSet里面
animationSet.addAnimation(alphaAnimation);
//为控件添加动画效果
iv_icon.setAnimation(animationSet);


四套API:

public AlphaAnimation(float fromAlpha, float toAlpha)

//参数一:开始的透明度,参数二:最后的透明度,1表示不透明,0表示完全透明。

public RotateAnimation(float fromDegrees, float toDegrees, int pivotXType, float pivotXValue, int pivotYType, float pivotYValue)

//参数一:开始的度数,参数二:最终的度数,
参数三:轴x的类型(包括 Animation.ABSOLUTE, Animation.RELATIVE_TO_SELF(相对自己), Animation.RELATIVE_TO_PARENT(相对父元素))
参数四:x的值,0f到1f。相对位置。
参数五:轴y的类型,参数六:轴y的相对位置。

public ScaleAnimation(float fromX, float toX, float fromY, float toY, int pivotXType, float pivotXValue, int pivotYType, float pivotYValue)

public ScaleAnimation(float fromX, float toX, float fromY, float toY, int pivotXType, float pivotXValue, int pivotYType, float pivotYValue)


Tween Animation的通用属性:
setFillAfter(boolean fillAfter) //true动画执行后停留在结束的状态
setStartOffset(long startOffset) //设置动画执行的等到时间
setRepeatCount(int repeatCount) //设置重复次数

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章