Зачем использовать Fragment#setRetainInstance(boolean)?

Я нахожу Fragment#setRetainInstance(true) запутанным. Вот документ Javadoc, извлеченный из API разработчика Android:

public void setRetainInstance(логическое сохранение)

Контролировать, сохраняется ли экземпляр фрагмента при повторном создании действия (например, после изменения конфигурации). Это можно использовать только с фрагментами, не находящимися в заднем стеке. Если установлено, жизненный цикл фрагмента будет немного отличаться при воссоздании активности:

  • onDestroy() не будет вызываться (но onDetach() все равно будет вызываться, потому что фрагмент отсоединяется от текущей активности).
  • onCreate(Bundle) не будет вызываться, поскольку фрагмент не создается повторно.
  • onAttach(Activity) и onActivityCreated(Bundle) будут по-прежнему вызываться.

Вопрос: Как вы как разработчик используете это и почему это упрощает работу?

63
задан Håvard Geithus 22 June 2012 в 16:32
поделиться