возврат стека к определенному фрагменту не меняет его флаг isVisible на true - PullRequest
0 голосов
/ 15 января 2019

Рабочий процесс навигации выглядит следующим образом,

  1. Задний стек с фрагами A-B-C-D-E-F

  2. Вызывается транзакция, которая заменяет бэк-стек фрагментом G

    fragmentTransaction.replace(R.id.container, fragmentG);
    fragmentTransaction.addToBackStack(backStackClass);
    
  3. Бэк-стек в настоящее время содержит только фрагмент G

  4. На спине, нажатой от фрагмента G, вызывается транзакция popBackStackImmediate фраг C

        boolean fragmentPopped = fragmentManager.popBackStackImmediate(toFragC, 0);
    
  5. бэк-стек в настоящее время содержит A-B-C и фрагмент C отображается для пользователя, но C.isVisible () по-прежнему имеет значение false

       List<Fragment> fragments = fragmentManager.getFragments();
       boolean cVisible = fragments.get(fragments.size()-1).isVisible();
       //cVisible is false
    
...