Sto sostituendo un frammento con un altro frammento. Voglio che il primo frammento scompaia con un effetto dissolvenza e il secondo frammento appaia con effetto dissolvenza. Come è fatto?Come applicare un'animazione di fade-in/fade-out quando si sostituisce un frammento
risposta
quando si preme un Fragment
poi applicare l'animazione come:
FragmentManager manager = getSupportFragmentManager();
FragmentTransaction ft = manager.beginTransaction();
ft.setCustomAnimations(R.anim.fade_in,
R.anim.fade_out);
ft.replace(R.id.realtabcontent, fragment);
ft.commit();
e quando si pop Fragment
quindi applicare l'animazione come:
FragmentManager manager = getSupportFragmentManager();
FragmentTransaction ft = manager.beginTransaction();
ft.setCustomAnimations(R.anim.fade_out, R.anim.fade_in);
ft.replace(R.id.realtabcontent, fragment);
ft.commit();
Spero che questo funziona per voi.
Update: Per maggiori informazioni vai a
puoi dare il codice del file xml perché non funziona nel mio caso –
@QadeerHussaincheck il mio aggiornamento –
ok sta lavorando per ma io voglio quando il primo fotogramma si sbiadisce e poi il secondo si attenua dopo un po 'di tempo –
Con Oltre a @MD codice
FragmentManager manager = getSupportFragmentManager();
FragmentTransaction ft = manager.beginTransaction();
ft.setCustomAnimations(R.anim.fade_in,
R.anim.fade_out);
ft.replace(R.id.realtabcontent, fragment);
ft.commit();
e quando si pop Frammento quindi applicare animazione come:
FragmentManager manager = getSupportFragmentManager();
FragmentTransaction ft = manager.beginTransaction();
ft.setCustomAnimations(R.anim.fade_out, R.anim.fade_in);
ft.replace(R.id.realtabcontent, fragment);
ft.commit();
e XML per fadeIn
<set xmlns:android="http://schemas.android.com/apk/res/android">
<alpha android:fromAlpha="0.0" android:toAlpha="1.0"
android:duration="@android:integer/config_mediumAnimTime" />
</set>
e XML per fadeOut
<set xmlns:android="http://schemas.android.com/apk/res/android">
<alpha android:fromAlpha="1.0" android:toAlpha="0.0"
android:duration="@android:integer/config_mediumAnimTime" />
</set>
Non è davvero necessario creare xml per le animazioni di base. Usa quelli predefiniti: 'setCustomAnimations (android.R.anim.fade_in, android.R.anim.fade_out);' – Nexen
@Nexen yeah .. ma se noti il commento di M D'il ragazzo ha chiesto il codice del file xml. –
Usa ft.setCustomAnimations (R.anim.fade_in, R.anim.fade_out); invece di ft.setCustomAnimations (R.anim.fade_out, R.anim.fade_int) ;. Il primo parametro è immettere il secondo parametro è l'uscita. – mertsimsek
Vale la pena aggiungere che setCustomAnimations possono anche avere 4 argomenti:
FragmentTransaction setCustomAnimations (int enter,
int exit,
int popEnter,
int popExit)
Imposta risorse di animazione specifiche da eseguire per i frammenti che sono che entrano e escono in questa transazione. Le animazioni popEnter e popExit verranno riprodotte per le operazioni di inserimento/uscita in particolare quando apre lo stack posteriore.
- 1. Android sostituisce il frammento corrente con un altro frammento
- 2. Viene visualizzata una pagina vuota quando si inserisce il frammento e lo si sostituisce nuovamente nello stesso frammento
- 3. Android - Backstack mentre si sostituisce il frammento in ViewPager
- 4. Come si sostituisce da un elenco di stringhe in VIM?
- 5. Come si sostituisce l'opacità di un controllo genitore in WPF?
- 6. Come si sostituisce un'intera riga di un data.table con NA?
- 7. Come si sostituisce un segno di sterlina (valuta) in javascript?
- 8. Come si esegue applicare su un data.table?
- 9. IllegalArgumentException quando si utilizza Otto con un frammento conservato
- 10. Viewpager in frammento non viene mostrato (ripristinato) quando si torna da un altro frammento
- 11. Java: sostituendo una sottoclasse/sottotipo di un parametro quando si sostituisce un metodo?
- 12. Cose da sapere quando si sostituisce WEBrick da Thin
- 13. Come si avvia un'attività all'interno di un frammento?
- 14. Frammento che si sovrappone su un altro frammento
- 15. OpenGLES 2 - quando applicare glBindTexture e quando applicare glActiveTexture?
- 16. Come si sostituisce accenti (Tedesco) in .NET
- 17. AngularJS - Ho bisogno di $ scope. $ Applicare quando si utilizza $ http
- 18. Come conservare solo un'istanza di un frammento, quando si passa a NavigationDrawer?
- 19. SyntaxError quando si utilizza jQuery.html per inserire un frammento HTML contenente un elemento di script
- 20. Quando un frammento OSGi è collegato all'host?
- 21. Come inviare dati da un frammento ad un altro frammento?
- 22. Frammento non chiama onSaveInstanceState quando si scorre ViewPager?
- 23. Frammento ricreato quando si cambia scheda con ViewPager
- 24. Quando si può applicare effettivamente il Teorema Master?
- 25. Mapbox non si avvia in un frammento
- 26. Come si ripristina un frammento visualizzato in precedenza?
- 27. Avviare un frammento tramite Intent all'interno di un frammento
- 28. Android: frammento padre di un frammento nidificato
- 29. Quando si chiama onAttach durante il frammento LifeCycle?
- 30. Come applicare la semantica del movimento quando un vettore cresce?
Sai come creare le animazioni? – kabuto178
sì nel file xml e caricare nell'attività –
utilizzare ANIMATOR --- not Animation! usa android.R.ANIMATOR.fade_in, NON usare android.R.ANIM.fade_in - ha un comportamento BUGS – user1269737