Ho sotto il codice per l'impostazione di entrare e uscire animazioni per i frammenti.Frammento personalizzatoAnimazione non funzionante in Lollipop
final FragmentManager manager = getSupportFragmentManager();
final FragmentTransaction ft = manager.beginTransaction();
ft.setCustomAnimations(R.anim.slide_in_right, R.anim.slide_out_left, R.anim.slide_in_left, R.anim.slide_out_right);
ft.replace(R.id.container, fragment, tag);
ft.addToBackStack(tag);
ft.commitAllowingStateLoss();
slide_in_left.xml
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
<translate android:fromXDelta="-100%"
android:toXDelta="0%"
android:duration="@integer/slide_anim_duration" />
</set>
Utilizzato stesso metodo per tutti gli altri le animazioni. Funziona bene in tutte le altre versioni, ma il problema è solo in Lollipop. Se guardiamo a alla funzione
setCustomAnimations (int enter, int exit, int popEnter, int popExit)
doc-link,
enter
e exit
funziona bene, ma popEnter
e popExit
fallisce in Lollipop.
Per favore mi guida su cosa è andato storto e fornire una soluzione compatibile che funziona da Android 2.3 al 5,1
Aggiornamento:
Osservando da vicino, sembra che l'animazione è lì, ma la durata non ha alcun effetto
Hai provato altre animazioni per verificare se il problema è in questo specifico 'slide_in_left.xml' uno? –
Inoltre, hai provato su diversi dispositivi? Il problema si verifica su un emulatore? –
@ Ricardo Sì, sto usando così tante animazioni come quella. Funzionano tutti bene tranne con 'popEnter' e' popExit' in lollipop. Il problema è nei dispositivi con Lollipop. Non ho provato l'emulatore. – Nizam