Ответ
Для возвращения формы после отпуска (например, после сворачивания приложения) можно использовать onSaveInstanceState() и onRestoreInstanceState().
override fun onSaveInstanceState(outState: Bundle) {
super.onSaveInstanceState(outState)
outState.putString("EDIT_TEXT_VALUE", editText.text.toString())
}
override fun onRestoreInstanceState(savedInstanceState: Bundle) {
super.onRestoreInstanceState(savedInstanceState)
editText.setText(savedInstanceState.getString("EDIT_TEXT_VALUE"))
}
Ключевые моменты:
- Сохраняем данные в
onSaveInstanceState()перед уничтожением активити - Восстанавливаем в
onRestoreInstanceState()илиonCreate() - Для сложных данных лучше использовать ViewModel + SavedStateHandle
- Для фрагментов аналогичный механизм через
onSaveInstanceState()