Я добавил фрагмент в framelayout следующим образом
mUserListFragment = new UserListFragment();
mMessageFragment = new MessageFragment();
mAccountFragment = new AccountFragment();
fragmentManager.beginTransaction().add(R.id.frame_layout, mAccountFragment, mAccountFragment.getClass().getSimpleName()).addToBackStack(mAccountFragment.getClass().getSimpleName()).commit();
fragmentManager.beginTransaction().add(R.id.frame_layout, mMessageFragment, mMessageFragment.getClass().getSimpleName()).addToBackStack(mMessageFragment.getClass().getSimpleName()).commit();
fragmentManager.beginTransaction().add(R.id.frame_layout, mUserListFragment, mUserListFragment.getClass().getSimpleName()).addToBackStack(mUserListFragment.getClass().getSimpleName()).commit();
Позже я отображаю или скрываю фрагмент следующим образом
//for showing
fragmentManager.beginTransaction().show(fragment).commit();
//for hiding
fragmentManager.beginTransaction().hide(fragment).commit();
Из одного фрагмента я перехожу к другому Activity, черезкакой-то метод onClick, и эта активность перенаправляет на ту же активность, которая содержала фрагменты.Когда дело доходит до активности держателя фрагмента, я перезагружаю фрагмент в onResume
, но он делает этот фрагмент пустым, однако отладкой я узнал, что фрагмент виден и был вызван метод onCreateView
, я попытался перезагрузитьфрагмент следующим образом
FragmentManager fm = getSupportFragmentManager();
FragmentTransaction ft = fm.beginTransaction();
ft.setReorderingAllowed(false);
ft.detach(activeFragment).commitNow();
ft.attach(activeFragment).commitNow();
Также я попробовал это
fragmentManager.beginTransaction().detach(activeFragment).attach(activeFragment).commitAllowingStateLoss();
Все эти просто оставить пустой экран.