2015-07-17 4 views
2

I ajouté plusieurs fragments comme ceci:Comment puis-je supprimer tous les fragments ajoutés avec le gestionnaire de fragments?

currentWebViewFragment = tabs.get(currentTabIndex); 
FragmentTransaction ft = fm.beginTransaction(); 
ft.add(R.id.webViewFrame,tabs.get(currentTabIndex)); 
ft.commit(); 

Mais « Si une activité est interrompue ou arrêtée, le système peut laisser tomber l'activité de la mémoire soit lui demandant de finir ou tuer tout simplement son processus

.

si l'activité est détruite et sauve l'état est tout, le fait le fragmentmanager.

comment puis-je supprimer tous les fragments qui ont été ajoutés à partir du fragmentmanager lorsque l'activité est détruit et décide de sauver son état?

Répondre

1

Vous pouvez ajouter tous les fragments dans un ArrayList, vous pouvez utiliser remove(fragment), par exemple:

FragmentTransaction ft = fm.beginTransaction(); 

for (Fragment fragment : fragmentList){ 

    ft.remove(fragment); 

} 

ft.commit(); 

Vous pouvez le faire dans la méthode onSaveInstanceState ou en onStop si vous voulez éviter l'état d'économie.