データを格納するために使用する Singleton Data クラスがあります。私は別Fragmentの s でアクセスしています。
最初のFragmentものが読み込まれると、Singleton のすべてのフィールドが であることは問題ありませんnull。2 番目Fragmentが表示されると、これらのフィールドに依存してそのデータが表示されます。1 つ目Fragmentは、これらのフィールドが確実に初期化されるようにします。
ただし、ユーザーが 2 番目の でホーム ボタンを押しFragment、約 1 時間後に再び開くと、シングルトンはすべてのデータを失い、フィールドFragmentにアクセスしようとしますnull。
メソッドを実装したかったのonSaveInstanceStateですが、これがどのように機能するかについて困惑しています。それを割り当てるデータのインスタンスがありません。
@Override
public void onSaveInstanceState(Bundle outState) {
super.onSaveInstanceState(outState);
outState.putSerializable("DATA", Data.getInstance());
}
@Override
public void onCreate(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
savedInstanceState.getSerializable("DATA"); //What to do with this?
}
どんな助けでも大歓迎です。