Я нахожу Fragment#setRetainInstance(true) запутанным. Вот документ Javadoc, извлеченный из API разработчика Android:
public void setRetainInstance(логическое сохранение)
Контролировать, сохраняется ли экземпляр фрагмента при повторном создании действия (например, после изменения конфигурации). Это можно использовать только с фрагментами, не находящимися в заднем стеке. Если установлено, жизненный цикл фрагмента будет немного отличаться при воссоздании активности:
- onDestroy() не будет вызываться (но onDetach() все равно будет вызываться, потому что фрагмент отсоединяется от текущей активности).
- onCreate(Bundle) не будет вызываться, поскольку фрагмент не создается повторно.
- onAttach(Activity) и onActivityCreated(Bundle) будут по-прежнему вызываться.
Вопрос: Как вы как разработчик используете это и почему это упрощает работу?