ObjectAnimator.ofFloat动画

ObjectAnimator animator = ObjectAnimator.ofFloat(tv, "translationX", 200).animator.setDuration(500).start();  

float translationX :表示在 X 轴上的平移距离,以当前控件为原点,向右为正方向,参数 translationX 表示移动的距离。
float translationY :表示在 Y 轴上的平移距离,以当前控件为原点,向下为正方向,参数 translationY 表示移动的距离。

view会从自身所有位置向右移动 200 像素

 

但是如果再调用

ObjectAnimator animator = ObjectAnimator.ofFloat(tv, "translationX", -200).animator.setDuration(500).start();  
不会回到原来的位置,而是从最开始的位置,也就是第一次移动之前的位置向左移动200像素

 

要想回到原来位置,

ObjectAnimator animator = ObjectAnimator.ofFloat(tv, "translationX", 0).animator.setDuration(500).start();  

移动距离设置为0即可!

你可能感兴趣的:(ObjectAnimator.ofFloat动画)