обновить / изменить анимацию в Android после загрузки с ресурса xml - PullRequest
3 голосов
/ 14 февраля 2012

Как я могу обновить атрибут анимации в коде Java после загрузки из XML?

У меня есть анимация падения капли дождя, определенная в xml.

<?xml version="1.0" encoding="utf-8"?>

<set xmlns:android="http://schemas.android.com/apk/res/android"  
    android:shareInterpolator="false">
  <translate android:fromYDelta="10%p" 
    android:toYDelta="70%p"
    android:duration="2000" 
    android:repeatCount="1"
    />
   <scale
    android:interpolator="@android:anim/accelerate_decelerate_interpolator"
    android:fromXScale="1.2"
    android:toXScale=".5"
    android:fromYScale="1.2"
    android:toYScale="0.5"
    android:pivotX="50%"
    android:pivotY="50%"
    android:fillAfter="false"
    android:duration="2000" />

после загрузки этой анимации

 rainDropAnimation =AnimationUtils.loadAnimation(this, R.anim.cloud_fall_down);

как я могу изменить fromYDelta анимации? в основном у меня есть какое-то облако, движущееся на экране. Я хочу показать дождь, если пользователь нажмет на облако. и я не хочу иметь много ресурсов анимации для разных изображений с каплями дождя, одна анимация будет обслуживать все точки падения, необходимые для изменения начальной точки

1 Ответ

1 голос
/ 13 августа 2013

Не уверен, что это может быть кому-нибудь полезно, НО я решаю свою проблему, используя TranslateAnimation.

Вот исходный код анимации: https://github.com/naveed-ahmad/Android-Game-Pack/blob/feature/UI/src/com/nav/gamepack/shared/WelcomeActivity.java#L192

...