У меня есть класс данных Singleton, который я использую для хранения данных. Я обращаюсь к нему в разных Fragment
с.
Когда загружается первый Fragment
, не проблема, что все поля в Singleton равны null
. Когда отображается второй Fragment
, это зависит от этих полей для отображения его данных. Первый Fragment
обеспечивает инициализацию этих полей.
Однако, когда пользователь нажимает кнопку «Домой» во втором Fragment
и снова открывает его примерно через час или около того, синглтон теряет все свои данные, и 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?
}
Любая помощь приветствуется.