Fragment#setRetainInstance(true)がわかりにくいと思います。AndroidDeveloperAPIから抽出されたJavadocは次のとおりです。
public void setRetainInstance(ブール値保持)
フラグメントインスタンスがアクティビティの再作成(構成の変更など)全体で保持されるかどうかを制御します。これは、バックスタックにないフラグメントでのみ使用できます。設定されている場合、アクティビティが再作成されるときのフラグメントのライフサイクルはわずかに異なります。
- onDestroy()は呼び出されません(ただし、フラグメントが現在のアクティビティから切り離されているため、onDetach()は呼び出されます)。
- フラグメントが再作成されていないため、onCreate(Bundle)は呼び出されません。
- onAttach(Activity)およびonActivityCreated(Bundle)は引き続き呼び出されます。
質問:開発者としてこれをどのように使用しますか?また、なぜそれが物事を簡単にするのですか?