【Android】FragmentManager は一度取得するだけでいい?
ちょっと、社畜モードになっていて、まともにブログかけていないので、ネタを仕事の内容から…。
フラグメントの処理で、関数内で毎回 getFragmentManager() を呼んでいたのですが、
ごく稀に、NULL が返ってきてアプリケーションが落っこちることがあった。
調べてみると、getFragmentManager() の返り値は毎回同じなので、初期利用時の一回だけ呼び出してやって、後は再利用すればいいような気がした。
android: getFragmentManager() returns null - Stack Overflow
ググってみると getActivity() かましてやった方がいいって答えもあるんだけど、
結果は変わらなかったって書いてるんだけど。
要なのはメインアクティビティ以外にきりかわって、フラグメントが取得できなかったのだと思うので、
メインアクティビティを取得して、そこからコールしてやった方がいいような気がする ・ω・
Stack Overflow のやつはイベント発生による別スレッドから 取得しようとしたから、nullだったんじゃないのかな?
Comments