Animations是一个实现动画的API,能实现旋转,缩放,淡入淡出等操作
1.补间动画
Tweened Animations:旋转,移动,伸展,和淡出等效果
Alpha---实现淡入淡出,Scale--缩放效果,Rotate--旋转,Translate--移动
分别对应Animations的四个子类
即 AlphaAnimations,TranslateAnimations,ScaleAnimations, RotateAnimations
实例:
AlphaAnimations的代码如下:
//创建一个AnimationSet对象,参数为boolean类型,
//true表示使用的是Animations的interpolater,false则是用自己的。
AnimationSet animationSet = new AnimationSet(true);
//创建一个AlphaAnimation对象,参数从完全的透明度到不完全的透明度
AlphaAnimation alphaAnimation new AlphaAnimation(1,0);
//设置动画执行的时间为500毫秒
alphaAnimation。setDuration(500);
//将alphaAnimation对象添加到AnimationSet当中
AnimationSet.addAnimation(alphaAnimation);
//使用ImageView的startAnimation方法来执行动画
image.startAnimation(animationSet);
ScaleAnimation的代码如下:
AnimationSet animationSet = new AnimationSet();
//参数解释
//参数1:从哪个旋转角度开始
//参数2:旋转到什么角度
//后面的四个参数是用来设置圆心
//参数3:X轴坐标的类型
//参数4:X轴的值
//参数5:y轴坐标的类型
//参数6; y轴的值
RotateAnimation rotateAnimation = new RotateAnimation(参数1,参数2,
参数3,参数4,参数5,参数6);
//时间设置
rotateAnimation.setDuration(1000);
animationSet.addAnimation(rotateAnimation);
image.startAnimation(animationSet);
同理:ScaleAnimations有8个参数
TtanslateAnimation也有8个参数 (这里不详细说了,用的时候查一下)
补间动画通用方法:
1.动画持续时间:setDuration()单位是毫秒
2.动画执行后停留在结束位置:setFillAfter
3.动画执行后,回到动画执行前的状态
4.设置动画执行之前等待时间
5.设置动画执行次数
以上java代码也可以在xml文件中填写,最后只用在java代码执行
Animation animation = AnimationUtils.loadAnimation (activity.this,R.anim.translate);
image.startAnimation(animation );就可以了
用哪种方法自己选择
2.帧动画
Frame-by-frame Animations:创建一个Drawable序列,这些Drawable可以按照指定的时间间歇性的一个一个的显示。