Как добиться анимации слева направо в Android - PullRequest
0 голосов
/ 03 января 2019

Я хочу Left to Right Arrow Animation в моем приложении, как показано ниже Изображение: enter image description here

Я пробовал ниже Код:

    ImageView arrowImage = sbView.findViewById(R.id.arrowID);
    ScaleAnimation scale = new ScaleAnimation(0.5f, 0.5f, 1, 1, ScaleAnimation.RELATIVE_TO_SELF, .5f,
            ScaleAnimation.RELATIVE_TO_SELF, .5f);
    scale.setDuration(700);
    scale.setRepeatCount(INFINITE);
    scale.setRepeatMode(REVERSE);
    scale.setFillAfter(true);
    scale.setInterpolator(new OvershootInterpolator());
    arrowImage.startAnimation(scale);

Но мой кодне работает, как я ожидал.Я попробовал другое решение из интернета, но не смог достичь результата.

Ответы [ 2 ]

0 голосов
/ 03 января 2019

Файл XML анимации

<set
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:interpolator="@android:anim/linear_interpolator"
    android:fillAfter="true">

   <translate
        android:fromXDelta="-10%p"
        android:toXDelta="10%p"
        android:duration="1200" />
</set>

Чтобы загрузить эту анимацию

viewObject.startAnimation(AnimationUtils.loadAnimation(activity, R.anim.filename));

Для положения перемещения ручки используйте атрибуты xml fromXDelta и toXDelta, измените значения

  • андроид: fromXDelta

Число с плавающей запятой или процент. Начальное смещение X Выражается либо в пикселях относительно нормальной позиции (например, «5»), в процентах относительно ширины элемента (например, «5%»), либо в процентах относительно ширины родительского элемента (например, «5% p»). ).

  • андроид: toXDelta

Число с плавающей запятой или процент. Конец X смещен. Выражается либо в пикселях относительно нормальной позиции (например, «5»), в процентах относительно ширины элемента (например, «5%»), либо в процентах относительно ширины родительского элемента (например, «5% p»). ).

Для получения дополнительной полезной информации посетите Анимационный ресурс

0 голосов
/ 03 января 2019

это перевод, попробуйте TranslateAnimation

TranslateAnimation(float fromXDelta, float toXDelta, float fromYDelta, float toYDelta)
...