所以我的布局中有一个
ImageView,当用户滑过后者时我想向右或向左滑动它.我使用TranslateAnimation来翻译ImageView,如下所示.
ImageView logoFocus = (ImageView) findViewById(R.id.logoFocus);
Animation animSurprise2Movement = new TranslateAnimation(logoFocus.getLeft(),logoFocus.getLeft()+150,logoFocus.getTop(),logoFocus.getTop());
animSurprise2Movement.setDuration(1000);
animSurprise2Movement.setFillAfter(true);
animSurprise2Movement.setFillEnabled(true);
logoFocus.startAnimation(animSurprise2Movement);
我已将此代码放在我的“向右滑动”部分,并使用相同的代码但使用getLeft() – 150用于“向左滑动”部分.当我第一次滑动时它按预期工作,但是当我向另一个方向滑动时,ImageView返回到其原始位置,然后向另一个方向滑动,而不是仅滑动到原始位置.
我已经尝试在AnimationListener的onAnimationEnd方法中添加以下内容,我将其设置为动画,但是徒劳无功.
MarginLayoutParams params = (MarginLayoutParams) logoFocus.getLayoutParams();
params.setMargins(logoFocus.getLeft()+150,logoFocus.getRight(),logoFocus.getBottom());
logoFocus.setLayout