Junior — Middle
Waar moet je rekening mee houden bij het opslaan van de staat van de app met behulp van de onSaveInstanceState-methode?
sobes.tech AI
Antwoord van AI
Bij het gebruik van onSaveInstanceState is het belangrijk om te onthouden:
- Bewaar alleen kleine en noodzakelijke gegevens, zoals de status van de gebruikersinterface (tekst in velden, geselecteerde items).
- Bewaar geen grote objecten of gegevens die op een andere manier kunnen worden hersteld (bijvoorbeeld uit een database of netwerk).
- onSaveInstanceState wordt aangeroepen voordat de activiteit wordt vernietigd, bijvoorbeeld bij het draaien van het scherm.
- Het herstellen van gegevens gebeurt in de methode onCreate of onRestoreInstanceState.
- Gebruik Bundle om gegevens op te slaan, ondersteund primitieve types, Serializable, Parcelable.
Voorbeeld van het opslaan van tekst uit een 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)
}