Junior — Middle
Какво трябва да се има предвид при запазване на състоянието на приложението с помощта на метода onSaveInstanceState?
sobes.tech AI
Отговор от AI
При използване на onSaveInstanceState е важно да запомните:
- Запазвайте само малки и необходими данни, като състоянието на потребителския интерфейс (текст в полетата, избрани елементи).
- Не запазвайте големи обекти или данни, които могат да бъдат възстановени по друг начин (например, от база данни или мрежа).
- 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)
}