您的位置:首页 > 移动开发 > Android开发

关于安卓的TranslateAnimation的使用

2015-12-03 16:59 513 查看
安卓的Tween Animation分为4种动画效果,分别是:alpha (透明变化) translate(位置移动) scale(缩放) rotate(旋转)。

其中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坐标的偏移量也是如此。如果不注意这点,当进行多次动画时将会发生错误移动。
示例代码:
Animation animation = new TranslateAnimation(10f,100f,0,0);//平移动画
animation.setFillAfter(true);//动画终止时停留在最后一帧,不然会回到没有执行前的状态
animation.setDuration(200);//动画持续时间0.2秒
imageview.startAnimation(animation);//是用ImageView来显示动画的

------有什么疑问大家可以评论交流
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息