Backstack Проблема в фрагменте и деятельности

Предположим, что у меня всего 7 действий, скажем, A, B, C, D, E, F, G, в Activity AI есть 4 фрагмента после нажатия на 4-й фрагмент. Я запускаю Activity B, затем Activity C, D, E, F . После прихода к Деятельности F, я хочу перейти к 2 фрагментам Деятельности A, но я хочу очистить весь backstack до 2-го фрагмента Деятельности A, после нажатия кнопки "Назад" 1-й фрагмент Деятельности A будет отображаться, так как я добавляю все фрагменты в backstack, как будет Я решаю эту проблему. Помогите мне, пожалуйста

код для вызова второго фрагмента в Деятельности F

SeconFragment fragment = new SeconFragment();
            addFragmentToActivity(getFragmentManager(), fragment, R.id.fragment_container_top,"secondfagment");

  public void addFragmentToActivity(@NonNull FragmentManager fragmentManager,
                                             @NonNull Fragment fragment, int frameId,String backstacklabel) {
        FragmentTransaction transaction = fragmentManager.beginTransaction();
        transaction.replace(frameId, fragment,backstacklabel);
        transaction.commit();
    }

2 ответа

Ваш вопрос немного сбивает с толку, но вот что получилось

FragmentManager fm = getActivity().getSupportFragmentManager();
for(int i = 0; i < fm.getBackStackEntryCount(); ++i) {  
    Fragment SecondFrag= fm .findFragmentByTag("yourFragmentTag");
     if(SecondFrag !=null){
        return;
       }
     else{
     fm.popBackStack();
    }
}

В коде fm .findFragmentByTag("yourFragmentTag") yourFragmentTag замените своим фрагментом Tag, который вы не хотите удалять из backstack

Надеюсь, что это решит вашу проблему

Использовать флаг Intent FLAG_ACTIVITY_CLEAR_TOP чтобы начать стартовое задание A, затем проверьте, живы ли первый и второй экземпляры фрагмента. Если не перезапустить ваши фрагменты в порядке с AddToBackStack()

Fragment frag = fm.findFragmentByTag("fragmentTag");
  if(frag!=null){
     loadFragments(); // code to launch fragments.
    }
  else{
  fm.popBackStack();
}
Другие вопросы по тегам