Sobes.tech
Назад к вопросам
Junior — Middle
77

Какими методами можно удерживать и восстанавливать состояние Activity в Android?

Ответ от нейросети

sobes.tech AI

В Android для удержания и восстановления состояния Activity используются следующие методы:

  • onSaveInstanceState(Bundle outState) — вызывается перед уничтожением Activity, здесь можно сохранить состояние (например, значения полей формы) в объект Bundle.

  • onRestoreInstanceState(Bundle savedInstanceState) или получение Bundle в onCreate(Bundle savedInstanceState) — здесь восстанавливают сохранённые данные.

  • ViewModel — компонент архитектуры, который сохраняет данные при изменениях конфигурации (например, поворот экрана) и не зависит от жизненного цикла Activity.

  • Сохранение данных в постоянное хранилище (SharedPreferences, база данных) — для более долгосрочного хранения.

Пример сохранения состояния:

@Override
protected void onSaveInstanceState(Bundle outState) {
    super.onSaveInstanceState(outState);
    outState.putString("key", editText.getText().toString());
}

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    if (savedInstanceState != null) {
        String text = savedInstanceState.getString("key");
        editText.setText(text);
    }
}