Более плавная анимация перемещения в android studio

Как усовершенствовать код?

По экрану движутся кнопки (от 5 до 12), движение задается через xml для каждой кнопки индвидуально.

<set android:ordering="sequentially"
    xmlns:android="http://schemas.android.com/apk/res/android">
    <set>
        <objectAnimator
            android:duration="5000"
            android:valueFrom="0"
            android:valueTo="1820"
            android:valueType="floatType"
            android:propertyName="y"
            android:repeatCount="4"
            android:repeatMode="reverse"/>
        <objectAnimator
            android:duration="5000"
            android:valueFrom="0"
            android:valueTo="910"
            android:valueType="floatType"
            android:propertyName="X"
            android:repeatCount="4"
            android:repeatMode="reverse"/>
    </set>
</set>

после нажатия на кнопку, она летит на другие координаты:

        set1.end();
        ObjectAnimator moveX = ObjectAnimator.ofFloat(pr1, "x", ListCoordinateX.get(0) );
        ObjectAnimator moveY = ObjectAnimator.ofFloat(pr1, "y", 60 );
        AnimatorSet as1 = new AnimatorSet();
        as1.playTogether(moveX, moveY);
        as1.setDuration(4000);
        as1.start();
        ListCoordinateX.remove(0);

Но летит она "не красиво" - сначала улетает на свою финальную точку по координатам из .xml и только потом движется на новую позицию. Как можно реализовать более плавное перемещение, что бы оно осуществлялось с той позиции, где кнопка была нажата?


Ответы (0 шт):