Жизненный цикл замененных ViewPager и BackStack?

Я действительно запутался в жизненном цикле Android ViewPager и начинаю думать, что в структуре моего приложения что-то не так. Поэтому я хотел бы получить подтверждение, если я могу сделать следующее:

У меня есть приложение, показывающее некоторые вкладки. Одна из этих вкладок показывает ViewPager, в котором есть два ListFragments. Эти ListFragments создаются в событии onCreate ViewPager.Когда вы щелкаете элемент в одном из фрагментов ListFragment, он заменяет весь ViewPagerFragment другим фрагментом (который является другим элементом ListFrament).

Вот код, который я использую, чтобы заменить ViewPager новым ListFragment

FragmentManager fm = getFragmentManager();
android.support.v4.app.FragmentTransaction ft = fm.beginTransaction();

ft.replace(R.id.container, new RequestForm(requestsList.get(itemIndex)));
ft.addToBackStack(null);
ft.commit();

Оттуда все работает нормально. Но, если пользователь нажимает кнопку «Назад», я получаю следующую ситуацию:

ViewPager перезагружается нормально (из onCreateView), но внутри ListFragment не будет отображаться. Похоже, что объект моего ListFragment еще жив, но кажется, что он потерял свое представление, и onCreateView не вызывается для его воссоздания (потому что объект не спал, пока ViewPager отсутствовал).

Сейчас я не публикую здесь больше кода, потому что я намерен узнать, нормально ли то, что я пытаюсь сделать, или нет в мышлении Android. Придется ли мне бороться с Android SDK, чтобы архивировать то, что я хочу сделать?

Ответы на вопрос(1)

Ваш ответ на вопрос