Ответ 1
Я думаю, что лучше взглянуть на определение Detach и Remove в Документацию FragmentTransaction, чтобы понять, что происходит.
Detach
Отсоедините данный фрагмент от пользовательского интерфейса. Это то же самое состояние, что и при он помещается в задний стек: фрагмент удаляется из пользовательского интерфейса, однако его состояние по-прежнему активно управляется фрагментом менеджер. При входе в это состояние его иерархия представлений уничтожается.
Удалить
Удалить существующий фрагмент. Если он был добавлен в контейнер, его представление также удаляется из этого контейнера.
Это означает:
Отключив, вы уничтожаете только фрагмент View, но сохраняете его состояние в менеджере фрагментов. Однако, удалив, вы удалите фрагмент и его состояние из диспетчера фрагментов; кроме того, он удалит представление фрагмента, если он был добавлен в контейнер пользовательского интерфейса. Таким образом, оба они уничтожают представление фрагмента, но отключение сохраняет состояние фрагмента в менеджере фрагментов.
Теперь пришло время посмотреть на прикрепление и добавление.
Добавить
Добавить фрагмент в состояние активности. Этот фрагмент может быть необязательно также имеют свое представление (если Fragment.onCreateView возвращает непустые) в контейнерный вид активности.
Присоединить
Повторно присоединить фрагмент после того, как он был ранее удален из пользовательского интерфейса с отсоединением (фрагмент). Это приводит к тому, что его иерархия представлений повторно созданный, прикрепленный к пользовательскому интерфейсу и отображаемый.
Это означает:
После добавления фрагмента он будет добавлен в состояние активности, и его представление будет добавлено к определенному представлению контейнера. Но при добавлении ничего не будет отображаться, если фрагмент не был добавлен в пользовательский интерфейс. Он просто придает менеджеру фрагментов. Однако, если вид уже был добавлен в контейнер в пользовательском интерфейсе и отсоединен после этого, добавив его, он будет отображаться снова в контейнере. Наконец, вы можете использовать attach и detach, если хотите временно уничтожить фрагмент View и хотите отображать и строить свой взгляд на будущее, не теряя при этом своего состояния внутри деятельности.