Какие методы ты знаешь для сохранения состояния пользовательского интерфейса в приложениях?
Answer from AI
sobes.tech AI
Для сохранения состояния пользовательского интерфейса в Android-приложениях используются следующие методы:
-
onSaveInstanceState(Bundle outState) и onRestoreInstanceState(Bundle savedInstanceState) — позволяют сохранить и восстановить состояние Activity или Fragment при пересоздании (например, при повороте экрана).
-
ViewModel — хранит данные, связанные с UI, и переживает изменения конфигурации, не теряя состояние.
-
SharedPreferences — для сохранения простых данных (настройки, флаги) между сессиями приложения.
-
Сохранение состояния в базе данных или файлах — для более сложных или больших данных.
-
SavedStateHandle — в сочетании с ViewModel позволяет сохранять и восстанавливать состояние UI.
Пример сохранения состояния текстового поля в Activity:
@Override
protected void onSaveInstanceState(Bundle outState) {
super.onSaveInstanceState(outState);
outState.putString("input_text", editText.getText().toString());
}
@Override
protected void onRestoreInstanceState(Bundle savedInstanceState) {
super.onRestoreInstanceState(savedInstanceState);
String text = savedInstanceState.getString("input_text");
editText.setText(text);
}