前回でも使ったが、FragmentTransaction.replaceで指定したFragmentに置き換えることができる・・・。
FragmentTransaction | Android Developers
replaceは置き換えるということである・・・。
置き換えるということは、以前のフラグメントは破棄されるということである・・・。
今回は、第3引数に"tag1"というタグをつけている・・・。
こっちは"tag2"・・・。
こっちは"tag3"・・・。
これらのタグは今回は使わないが、このタグでフラグメントを探すときは便利だ・・・。
メンバフィールドにcountを用意・・・。
このオブジェクトが作られてから、onStartが呼ばれた回数を持つ・・・。
そしてonCreateも追加・・・。ここでいったんgetActivityでmainActivityを取得して、Toastで"onCreate()"を表示・・・。
onStartを定義して、Toastで"onStart()"を表示したら、countを増やして、countの値も表示・・・。
onDestroyで"onDestroy()"を表示するようにもする・・・。
今回、countはあまり関係ないが、あとで使うかもしれない・・・。
Menu1を押すと、
"onCreate()"・・・。
"onStart()"・・・。
countは1・・・。
Menu2を押すと、
"onDestroy"が呼ばれる・・・。
これは赤いfragment1が破棄された時のものである・・・。
"onCreate()"・・・。
"onStart()"・・・。
countは1・・・。
Menu3を押すと、
"onDestroy"・・・。
緑のfragment2が破棄された・・・。
"onCreate()"・・・。
"onStart()"・・・。
countは1・・・。
再びMenu1を押してみる・・・。
この"onDestroy()"は青いfragment3の破棄によるもの・・・。
"onCreate()"・・・。
"onStart()"・・・。
countは1・・・。
onDestroyが何度も呼ばれていることから、切り替えるたびにFragmentは破棄されているのがわかる・・・。
2度目のfragment1でも1度目を破棄しているのでcountは1のまま・・・。