jak mogę łamać rzeczy za pomocą Fragments z setRetainInstance (true) i dodawać je do backstack?

docs na setRetainInstance mówią:

Można tego używać tylko z fragmentami nie znajdującymi się na stosie tylnym.

więc zacząłem się nią bawić.

Mam jedno działanie z dodaniem pierwszego fragmentu A

FragmentManager fm = getSupportFragmentManager();
FragmentTransaction ft = fm.beginTransaction();
ft.replace(R.id.content, new PackageFragment());
ft.commit

następnie z tego fragmentu uruchamiam metodę z Parent Activity, która dodaje frag B do backstacka

FragmentManager fm = getSupportFragmentManager();
FragmentTransaction ft = fm.beginTransaction();
ft.replace(R.id.content, new OrderFragment());
ft.addToBackStack(null);
ft.commit();

następnie tworzę logi msg z onCreate, onDestroy, onSaveInstanceState, onActivityCreated ... itp.

Próbuję dwóch wersji tego procesu. Obracanie urządzenia na każdym fragmencie.

domyślna

Wszystko jest zgodne z oczekiwaniami. onCreate, onDestroy na fragmentach ognia

setRetainInstance (true)

Wszystko jest zgodne z oczekiwaniami ?. naCreate, onDestroy na fragmentach nie strzelaj

i wszystko wydaje się działać, gdy fragmenty są w backstacku .. więc dlaczego doktorzy mówią, że nie powinienem tego używać? Jakie są scenariusze, w których mogę mieć kłopoty?

dzięki

questionAnswers(1)

yourAnswerToTheQuestion