Получить текущий фрагмент в активности вне onBackPressed? - PullRequest
0 голосов
/ 05 февраля 2020

Я искал, как я могу получить открытый фрагмент внутри действия, но обнаружил, что проверка должна происходить в методе onBackPressed этого действия

, поэтому можно включить его в действие без необходимости нажатия пользователем кнопки назад. нажата?

вот текущее решение

    @Override
        public void onBackPressed() {
            super.onBackPressed();

             Fragment f = getActivity().getFragmentManager().findFragmentById(R.id.fragment_container);
          if(f instanceof CustomFragmentClass) 
            // do something with f
            ((CustomFragmentClass) f).doSomething();

        } 

1 Ответ

0 голосов
/ 05 февраля 2020

Вы можете сделать это в вашем классе деятельности почти в любом месте.

 Fragment f = getSupportFragmentManager().findFragmentById(R.id.fragment_container)

Или в вашем фрагменте

 Fragment f = getActivity().getSupportFragmentManager().findFragmentById(R.id.fragment_container)
...