У меня есть Activity с BottomNavigationView и контейнером фрагментов (FrameLayout). Каждая вкладка в нижней навигации связана с TabFragment (TabFragment1, TabFragment2 и т. д.), И каждый TabFragment является родительским фрагментом для вложенных фрагментов. Вложенные фрагменты добавляются в задний стек для восстановления после нажатия кнопки возврата (каждый TabFragment имеет свой собственный задний стек). Мой вопрос: следует ли вручную удалять вложенный фрагмент в каждом TabFragment, когда фрагменты вкладок заменяются в Activity? Разрушается ли вложенный фрагмент при уничтожении родительского фрагмента? Очищается ли задний стек после уничтожения его фрагмента? Я хочу избежать утечки памяти. Спасибо!
Не уверен в этом. Но когда я использую ViewPager, если я заменяю ViewPager другим фрагментом, ViewPager будет заменен, но фрагмент в ViewPager не будет удален. Поэтому, когда я заменяю ViewPager, я делаю это.
for( Fragment f : getSupportFragmentManager().getFragments()){
if ( f.getClass().getSimpleName().equals("Your nested fragment name"))
transaction.remove(f);
}