如何在Android中实现一个补间动画效果

  介绍

这篇文章主要介绍了如何在Android中实现一个补间动画效果,此处通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考价值,需要的朋友可以参考下:

<强>补间动画

原形态变成新形态时为了过渡变形过程,生成的动画就叫补间动画
位移,旋转,缩放,透明

<强>位移:

参数10指的是X的起点坐标,但不是指屏幕X坐标为10的位置,而是imageview的真实X + 10
参数150指的是X的终点坐标,它的值是imageview的真实X + 150

//创建为位移动画对象,设置动画的初始位置和结束位置

<代码> TranslateAnimation ta=new TranslateAnimation(150, 140);

1只;x坐标的起点位置,如果相对于自己,传0.5 f,那么起点坐标就是真实x + 0.5 * 4宽度;

2只;x坐标的终点位置,如果传入2,那么终点坐标就是真实x + 2 * 4的宽度;

3只,y坐标的起点位置,如果传入0.5 f,那么起点坐标就是真实y + 0.5 * 4高度;

4只;y坐标的终点位置,如果传入2,那么终点坐标就是真实y + 2 * 4高度。

<代码>,TranslateAnimation ta=new TranslateAnimation(动画。RELATIVE_TO_SELF 0.5 f,动画。RELATIVE_TO_SELF 2动画。RELATIVE_TO_SELF 0.5 f,动画。RELATIVE_TO_SELF 2);

动画播放相关的设置

,//设置动画持续时间   ta.setDuration (2000);   ,//动画重复播放的次数   ta.setRepeatCount (1);   ,//动画重复播放的模式   ta.setRepeatMode (Animation.REVERSE);   ,//动画播放完毕后,组件停留在动画结束的位置上   ta.setFillAfter(真正的);   ,//播放动画   iv.startAnimation (ta);

<强>缩放:

1。参数0.1 f表示动画的起始宽度是真实宽度的0.1倍
2。参数4表示动画的结束宽度是真实宽度的4倍
3。第四缩放的中心点在左上角

<代码> ScaleAnimation sa=new ScaleAnimation (0.1 f, 4、0.1 f, 4);

1只;参数0.1 f和4意义与上面相同

2只;改变缩放的中心点:传入的两个0.5 f类型都是相对于自己,这两个参数改变了缩放的中心点

3只;中心点x坐标=真实x + 0.5 * 4宽度

4只;中心点Y坐标=真实Y + 0.5 * 4高度

<代码>,ScaleAnimation sa=new ScaleAnimation (0.1 f, 4、0.1 f 4动画。RELATIVETOSELF 0.5 f,动画。RELATIVETOSELF 0.5 f);

<强>透明:

0为完全透明,1为完全不透明

<代码> AlphaAnimation aa=new AlphaAnimation (0, - 0.5 f);

<>强旋转:

1只;20表示动画开始时的iv的角度

2只;360表示动画结束时iv的角度

3只;默认旋转的圆心在静脉左上角

<代码> RotateAnimation ra=new RotateAnimation (360),

1只;20360年的意义和上面一样

2只;指定圆心坐标,相对于自己,值传入0.5,那么圆心的x坐标:真实x +四世宽度* 0.5

3只;圆心的Y坐标:真实Y +第四高度* 0.5

<代码> RotateAnimation ra=new RotateAnimation(360、动画。RELATIVE_TO_SELF 0.5 f,动画。RELATIVE_TO_SELF 0.5 f);

<强>所有动画一起飞

,//创建动画集合   ,AnimationSet  set =, new  AnimationSet(假);   ,//往集合中添加动画   ,set.addAnimation (aa);   ,set.addAnimation (sa);   ,set.addAnimation (ra);   ,iv.startAnimation(集);

效果如图:

如何在Android中实现一个补间动画效果

<强>布局代码:

, xmlns:工具=?http://schemas.android.com/tools",,   ,android: layout_width=癿atch_parent",   ,android: layout_height=癿atch_parent",   ,工具:上下文=?MainActivity"祝辞,   ,& lt; ImageView    ,android: id=癅 + id/iv",   ,android: layout_width=皐rap_content",   ,android: layout_height=皐rap_content",   ,android: src=https://www.yisu.com/zixun/癅drawable/ic_launcher”   android: layout_centerVertical=" true "   android: layout_centerHorizontal=" true "/>      <按钮   android: layout_width=" wrap_content "   android: layout_height=" wrap_content "   android: onClick="翻译"   android:文本="平移"/>   <按钮   android: layout_width=" wrap_content "   android: layout_height=" wrap_content "   android: onClick="范围"   android:文本="缩放"/>   

如何在Android中实现一个补间动画效果