2015-10-10 1 views
-1

Документация для Android, похоже, не имеет большого значения, кроме указания того, что фрагмент удаляется после совершения транзакции. Остался ли фрагмент? Как в метафизическом смысле? Или он существует где-то еще, может быть вызван при необходимости? Если да, как бы вы это назвали?Что происходит с фрагментом после его удаления или замены?

В качестве более прагматичного вопроса, если у вас есть Activity, который содержит один фрагмент View и несколько фрагментов, которые в конечном итоге попадают в этот вид, существует способ ссылки на фрагменты, отличные от самого последнего в фоновом стеке (для вопроса при условии, что все они размещены там)

+0

Вы хотите узнать больше о FragmentManager: http://developer.android.com/reference/android/app/FragmentManager.html –

+0

Чтобы ответить на ваш вопрос, фрагменты приостановлены и остановлены и _sometimes_ (при необходимости) , уничтожен. Самый простой способ проверить (и понять) это поведение - реализовать весь жизненный цикл фрагмента (http://developer.android.com/guide/components/fragments.html#Lifecycle) и поставить журнал. Затем добавьте/удалите/скройте фрагменты и посмотрите, что произойдет. Fragment Manager оставляет за собой право сохранить эти фрагменты за время NN в ожидании возможного возврата. –

ответ

0

Когда вы удаляете или отсоединяете фрагмент, он не удаляется из проекта, он может быть привязан к другому действию.

Но как только вы выскочите фрагмент из стека и уничтожьте его, его нельзя отменить. Потому что, когда вы уничтожаете любые фрагменты, вызывается функция очистки, которая очищает каждую часть этого фрагмента.