2015-11-27 16 views
6

Come posso evitare che ciò accada? L'attività di chiamata scompare quando la nuova positività "si apre" utilizzando overridePendingTransition. Sto usando overridePendingTransition in modo da animare su dispositivi meno recenti. Ho solo bisogno di interrompere l'attività di chiamata dalla scomparsa, come quello che ho fatto sui dispositivi LOLLIPOPL'uso di overridePendingTransition fa scomparire l'attività di chiamata quando si apre una nuova attività in Android Kitkat?

if (Build.VERSION.SDK_INT >= VERSION_CODES.LOLLIPOP) { 
    Window window = activity.getWindow(); 
    window.setExitTransition(null); 
} 

Prendere atto questo accade solo su Android 4.4 KitKat. Ho provato a ottenere una scena per l'intera attività di layout e quindi impostare exitAction su null ma non ha funzionato.

Come posso fare questo?

+0

Sto avendo lo stesso problema. Hai mai trovato una soluzione? Grazie. – Jonathan

+0

Mi dispiace di no. Ho provato a seguire un consiglio che ho letto qui su SO per utilizzare un tema diverso rispetto al tema principale, ma non funziona ancora. Ho appena creato un'animazione che non fa nulla e imposta un intervallo di 1000000 per mantenerlo in posizione. E le animazioni xml non rispettano l'attributo repeatMode, quindi non posso farlo ripetere all'infinito. Se trovi qualcosa per favore condividilo anche con me –

risposta

5

Ho scoperto la risposta a questo problema proprio ora.

Sembra che gli attributi del mio tema stiano incasinando le animazioni. Per risolvere questo ho dovuto impostare i seguenti attributi:

<item name="android:windowIsTranslucent">false</item> 
    <item name="android:windowIsFloating">true</item> 

che erano in origine:

<item name="android:windowIsTranslucent">true</item> 
    <item name="android:windowIsFloating">false</item> 

Dopo di che, ha funzionato correttamente su Kitkat e ho provato sulle altre API e funziona ancora come previsto . Spero che questo aiuti qualcun altro a risolvere questo problema

+0

Molto utile! Grazie! –