mam ten ObjectAnimator:Jak usunąć wolny koniec animacji za pomocą ObjectAnimatora?
cloudAnim2 = ObjectAnimator.ofFloat(cloud2ImageView, "x",500, 1000);
cloudAnim2.setDuration(3000);
cloudAnim2.setRepeatCount(ValueAnimator.INFINITE);
cloudAnim2.setRepeatMode(ValueAnimator.RESTART);
cloudAnim2.start();
cloudAnim2.addListener(new AnimatorListener() {
@Override
public void onAnimationCancel(Animator animation) {}
@Override
public void onAnimationEnd(Animator animation) {}
@Override
public void onAnimationRepeat(Animator animation) {}
@Override
public void onAnimationStart(Animator animation) {}
});
Jak widać, chmura rozpocznie z pozycji 500 i będzie animować do pozycji 1000, a następnie będzie to powtórzyć animację.
Problem polega na tym, że animacja staje się wolniejsza, ponieważ zbliża się do końca. Chodzi mi o to, że prędkość ruchu nie zawsze jest taka sama.
Chcę, aby prędkość stała się zawsze taka sama. Jak to zrobić?
dzięki
Doszedłem do dokładnie tego samego wniosku, gdy ze złożoną powtarzającą się animacją za pomocą KeyFrames, PVH i ObjectAnimator.ofPropertyValuesHolder. Zawsze zakładałem, że ObjectAnimator będzie polegać wyłącznie na animatorach ustawionych w KeyFrame, ale byłem naprawdę zaskoczony, że domyślnie widzę AccelerateDecelerateInterpolator. – Mattias