Получение состояния фрагмента - PullRequest
0 голосов
/ 27 июня 2018

В моем фрагменте есть форма, и я хочу восстановить заполненные данные, если экран выключен или пользователь нажимает кнопку «Домой».

Когда экран выключается, вызываются методы onSaveInstanceState и onPause, и я могу сохранить состояние в одном из этих методов.

Например

@Override
public void onPause() {
    super.onPause();

    for (CustomTextInputLayout inputField : formHelper.getCustomTextInputLayoutList()) {
        editor.putString(inputField.getId() + "", inputField.getText());
        editor.apply();
    }
}

Или я могу сохранить в onSaveInstanceState через outState связку.

Но когда я пытаюсь восстановить сохраненное состояние, я не смог найти подходящий метод. Я пробовал onActivityCreated и onViewStateRestored, но ни один из этих методов не вызывается после выключения экрана, а затем фрагмент снова выходит на передний план.

Что может быть лучшим решением этой проблемы?

Буду признателен за любую помощь.

1 Ответ

0 голосов
/ 27 июня 2018

Когда вы сохраняете состояние с помощью onSaveInstanceState в Bundle. Вы получите это Bundle во время воссоздания Fragment, поэтому просто проверьте его в методе onCreate.

public void onCreate(@Nullable Bundle savedInstanceState)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...