example - transition android
fillAfter y fillEnabled no funcionan en Android ver animaciĆ³n XML (4)
Tengo curiosidad por este comportamiento ... Actualmente estoy configurando los dos valores en el XML anim:
android:fillEnabled="true"
android:fillAfter="true"
Sin embargo, la transformación no se aplica después de que se realiza la animación ... siempre se restablece. Cuando lo configuro programáticamente a través de un código, parece funcionar:
animation.setFillEnabled(true);
animation.setFillAfter(true);
Así que solo tengo curiosidad de cómo debería funcionar esto, ya que prefiero configurarlo en el XML. ¡Gracias!
En general, use fillAfter y fillEnabled en el elemento raíz
por lo que tampoco
<?xml version="1.0" encoding="utf-8"?>
<translate
xmlns:android="http://schemas.android.com/apk/res/android"
android:fillAfter="true"
android:fillEnabled="true"
android:fromXDelta="0%"
android:toXDelta="-100%"
android:duration="500" />
O
<?xml version="1.0" encoding="utf-8"?>
<set
xmlns:android="http://schemas.android.com/apk/res/android"
android:fillAfter="true"
android:fillEnabled="true">
<translate
android:fromXDelta="0%"
android:toXDelta="-100%"
android:duration="500" />
</set>
También funciona si no tienes la etiqueta establecida y solo estás traduciendo o algo así.
<translate xmlns:android="http://schemas.android.com/apk/res/android"
android:interpolator="@android:anim/linear_interpolator"
android:fromXDelta="0"
android:toXDelta="0"
android:fromYDelta="1000"
android:toYDelta="-300"
android:startOffset="100"
android:duration="1000"
android:fillAfter="true" />
Tuve el mismo problema, esto me funcionó:
<set
android:fillEnabled="true"
android:fillAfter="true"
xmlns:android="http://schemas.android.com/apk/res/android">
<translate
android:fromYDelta="0"
android:toYDelta="-20%p"
android:duration="7000" />
</set>
Ponga los atributos fillEnabled y fillAfter en la etiqueta Set.
poner los atributos fillEnabled y fillAfter en la etiqueta establecida ayudó a resolver el problema.