我将ImageView放在屏幕中央。然后我想从底部到中心设置动画。我推断它会毫不拖延地将其移出屏幕,然后返回相同的值,该值将在中心结束。但是,动画会使视图从顶部退出。
mLogoIV.animate().translationY(1000f).setListener(new AnimatorListenerAdapter() {
@Override
public void onAnimationEnd(Animator animation) {
super.onAnimationEnd(animation);
mLogoIV.animate().translationY(-1000f).setDuration(3000);
}
});
答案 0 :(得分:1)
使用translationYBy(
相对于当前位置设置动画
https://developer.android.com/reference/android/view/ViewPropertyAnimator.html#translationYBy(float)
mLogoIV.animate().translationYBy(1000f).setListener(new AnimatorListenerAdapter() {
@Override
public void onAnimationEnd(Animator animation) {
super.onAnimationEnd(animation);
mLogoIV.animate().translationYBy(-1000f).setDuration(3000);
}
});
来自文档:
作为与当前值的偏移量的动画量。
与你现在正在做的事情:
要动画的值。
答案 1 :(得分:0)
使用Object animator。
ObjectAnimator objectAnimator= ObjectAnimator.ofFloat(mLogoIV, "translationY", -750, 0);
objectAnimator.setDuration(1000);
objectAnimator.start();