У меня есть 3 фрагмента в задании, когда планшет находится в портретном режиме.Однако у меня есть только 2 из этих фрагментов, когда в ландшафте.Проблема, с которой я сталкиваюсь, заключается в том, что при переходе от портрета к ландшафту упражнение создает третий фрагмент.Я получаю и ошибку, так как этот фрагмент не может быть создан.
Я выяснил, что этот фрагмент создается, потому что он находится в заднем стеке.
Я попытался удалить фрагмент в методе onDestroy с помощью
FragmentTransaction f = fragmentManager.beginTransaction();
f.remove(mf);
f.commit();
Однако я получаю сообщение об ошибке, в котором говорится, что я не могу использовать эту функцию после onSaveInstanceState
Каким будет правильный способ удаления этого фрагмента из заднего стека?
Обновить
Я, вероятно, должен добавить, что фрагмент, с которым у меня проблемы, является mapFragment из этой библиотеки
https://github.com/petedoyle/android-support-v4-googlemaps
То, как я его использую, выглядит примерно так:
mf = MapFragment.newInstance(1, true);
ft = fragmentManager.beginTransaction();
ft.replace(R.id.mapContainer, mf);
ft.setTransition(FragmentTransaction.TRANSIT_FRAGMENT_FADE);
ft.addToBackStack("map");
ft.commit();