将视图的平滑幻灯片从其当前位置设置为左侧X像素的位置

时间:2015-02-01 16:09:19

标签: java android animation

我想从屏幕上的当前位置到平滑滚动中剩余的X像素点执行视图的平移动画。我尝试以下列方式执行此操作:

oldPosition = view.getLeft();
newPosition = oldPosition - secondview.getwidth();

TranslateAnimation translateAnimation = new TranslateAnimation(Animation.RELATIVE_TO_SELF, 0, Animation.RELATIVE_TO_SELF, newPosition,
                    Animation.RELATIVE_TO_SELF, 0, Animation.RELATIVE_TO_SELF, 0);
            translateAnimation.setDuration(1000);

translateAnimation.reset();
view.clearAnimation();
view.setAnimation(translateAnimation);

但最终结果不是从旧位置到新位置的平滑滚动,而是看起来好像视图在屏幕外滚动然后重绘。如何从正确的起始位置创建平滑滚动到正确的结束?

1 个答案:

答案 0 :(得分:1)

我建议使用ObjectAnimator(或ValueAnimator)......

例如this so answer应该给你一个良好的开端。