Android: как закончить фрагмент при переходе на другой? - PullRequest
0 голосов
/ 07 ноября 2018

Учитывая, что у меня есть навигационное представление и несколько фрагментов, связанных с ним. Я хотел закончить фрагмент при переходе на другой

Например, если я во фрагменте A и я щелкаю фрагмент B (или любой другой), фрагмент A должен быть закрыт или уничтожен.

Примечание: fragmentTransaction.replace(R.id.container, fragment); не работает

код для транзакции

if(fragment!=null){
            FragmentManager fragmentManager = getSupportFragmentManager();
            FragmentTransaction ft = fragmentManager.beginTransaction();
            ft.replace(R.id.fl, fragment);
            ft.commit();

        }

Ответы [ 2 ]

0 голосов
/ 07 ноября 2018

это просто и обрабатывается автоматически со стороны Android, достаточно после замены фрагмента не делать .addToBackStack(null) и когда вы переходите к следующему фрагменту, последний фрагмент исчезает

0 голосов
/ 07 ноября 2018

Судя по комментариям, ваш WebView не выгружается при переходе вашего фрагмента.Чтобы решить эту проблему, позвоните webView.stopLoading(); и webView.destroy(); из ответного вызова фрагмента onPause() или onStop().Вы также можете обернуть оба этих вызова в нулевую проверку на случай, если WebView действительно выгружается.Таким образом, ваш блок кода будет выглядеть примерно так:

if(webView != null){
    webView.stopLoading();
    webView.destroy();
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...