Ответ 1
Вы должны рассмотреть, что вы планируете делать с фрагментом, чтобы решить, какой путь следовать. Если вы используете FragmentTransaction, чтобы скрыть фрагмент, он все равно может находиться в рабочем состоянии своего жизненного цикла, но его пользовательский интерфейс был отсоединен от окна, чтобы он больше не отображался. Таким образом, вы можете технически по-прежнему взаимодействовать с фрагментом и снова подключать его интерфейс, который вам понадобится. Если вы замените фрагмент, вы фактически вытаскиваете его из контейнера, и он будет проходить через все события разрыва в жизненном цикле (onPause, onStop и т.д.), И если по какой-то причине вам понадобится этот фрагмент снова, вам придется вставьте его обратно в контейнер и позвольте ему снова запустить всю свою инициализацию.
Если есть большая вероятность, что вам понадобится этот фрагмент снова, просто спрячьте его, потому что это менее дорогостоящая операция, чтобы перерисовать его макет, чем полностью переинициализировать его.