FragmentManager.putFragmentで、Fragmentの参照を一応保存できる。
FragmentManager | Android Developers
strings.xmlで、
Activity用の"Button1"と、Fragment用の"FButton1"と、TextViewの"Fragment1"。
fragment1_main.xmlは、
TextViewとButton。
activity_main.xmlは、
ButtonとFrameLayout。
Fragment1.javaは、
インスタンスを保持出来てるかは、mNumberでチェックできる。
onCreateViewでTextViewにmNumberをセット。
Buttonを押すと、mNumberが増えてまたセット。
MainActivity.javaは、
MainActivity側のButtonでFragment1をadd。
onSaveInstanceStateの時に、putFragmentで保存、onRestoreInstanceStateの時に、getFragmentで復元。
回転すれば、ここに来るので、その時のIDとか、mNumberがどうなるか見てる。
![f:id:BG1:20201019233947p:plain 起動時](https://cdn-ak.f.st-hatena.com/images/fotolife/B/BG1/20201019/20201019233947.png)
起動時。
Button1を押すと、
![f:id:BG1:20201019234035p:plain Fragment1がadd](https://cdn-ak.f.st-hatena.com/images/fotolife/B/BG1/20201019/20201019234035.png)
Fragment1がadd。
FButton1を押すと、
![f:id:BG1:20201019234146p:plain 0から1に増えている。押すたびに増える。](https://cdn-ak.f.st-hatena.com/images/fotolife/B/BG1/20201019/20201019234146.png)
0から1に増えている。押すたびに増える。
回転すると、
![f:id:BG1:20201019234235p:plain 0に戻ってしまう](https://cdn-ak.f.st-hatena.com/images/fotolife/B/BG1/20201019/20201019234235.png)
0に戻ってしまう。
![f:id:BG1:20201019234317p:plain ログを見るとわかるが、IDは同じなのに、インスタンスは別。](https://cdn-ak.f.st-hatena.com/images/fotolife/B/BG1/20201019/20201019234317.png)
ログを見るとわかるが、IDは同じなのに、インスタンスは別。
実際のところ、インスタンスが永続化されるわけではなく、同じIDで再生成しているだけみたいなので、オブジェクトもビューも同じ状態を維持できてるわけではない。
("一応"保存と言ってるのはそういうこと・・・。)