Назад к вопросам
Junior — Middle
75
Что необходимо учитывать при сохранении состояния приложения с помощью метода onSaveInstanceState?
Компании, где спрашивали
ПСБ
Ответ от нейросети
sobes.tech AI
При использовании onSaveInstanceState важно помнить:
- Сохраняйте только небольшие и необходимые данные, например, состояние UI (текст в полях, выбранные элементы).
- Не сохраняйте большие объекты или данные, которые можно восстановить иначе (например, из базы или сети).
- onSaveInstanceState вызывается перед уничтожением активности, например, при повороте экрана.
- Восстановление данных происходит в методе onCreate или onRestoreInstanceState.
- Используйте Bundle для сохранения данных, поддерживаются примитивные типы, Serializable, Parcelable.
Пример сохранения текста из EditText:
override fun onSaveInstanceState(outState: Bundle) {
super.onSaveInstanceState(outState)
outState.putString("input_text", editText.text.toString())
}
override fun onRestoreInstanceState(savedInstanceState: Bundle) {
super.onRestoreInstanceState(savedInstanceState)
val text = savedInstanceState.getString("input_text")
editText.setText(text)
}