安卓的Tween Animation分为4种动画效果,分别是:alpha (透明变化) translate(位置移动) scale(缩放) rotate(旋转),
关于安卓的TranslateAnimation的使用
。其中Translate动画就是定义一个开始的位置和一个结束位置,定义移动时间,然后就能自动产生移动动画,实现控件的动态位移。Android的translate移动方向有 横向(X) 竖向(Y)
TranslateAnimation(float fromXDelta, float toXDelta, float fromYDelta, float toYDelta)
参数说明如下:
float fromXDelta 动画开始的点离当前View X坐标上的差值
float toXDelta 动画结束的点离当前View X坐标上的差值
float fromYDelta 动画开始的点离当前View Y坐标上的差值
float toYDelta 动画开始的点离当前View Y坐标上的差值
要注意的是参数fromXDelta指的是开始动画时的点的X坐标相对于View初始位置时X坐标的偏移量,例如一开始设置View的X坐标为3,经过第一次动画移动到X坐标为10的位置,当进行第二次动画时,参数fromXDelta指的是第二次动画开始的点的坐标相对于初始位置(X坐标为3)的偏移量,而不是相对于第一次移动过后(X坐标为10)的偏移量;Y坐标的偏移量也是如此,
电脑资料
《关于安卓的TranslateAnimation的使用》(http://meiwen.anslib.com)。如果不注意这点,当进行多次动画时将会发生错误移动。示例代码:
Animation animation = new TranslateAnimation(10f,100f,0,0);//平移动画
animation.setFillAfter(true);//动画终止时停留在最后一帧,不然会回到没有执行前的状态
animation.setDuration(200);//动画持续时间0.2秒
imageview.startAnimation(animation);//是用ImageView来显示动画的