Junior — Middle
Ce trebuie avut în vedere atunci când salvați starea aplicației folosind metoda onSaveInstanceState?
sobes.tech AI
Răspuns de la AI
Atunci când utilizați onSaveInstanceState, este important să rețineți:
- Salvați doar date mici și necesare, cum ar fi starea interfeței utilizatorului (text în câmpuri, elemente selectate).
- Nu salvați obiecte mari sau date care pot fi recuperate în alt mod (de exemplu, dintr-o bază de date sau rețea).
- onSaveInstanceState este apelat înainte de distrugerea activității, de exemplu, la rotirea ecranului.
- Recuperarea datelor are loc în metoda onCreate sau onRestoreInstanceState.
- Utilizați Bundle pentru a salva datele, suportă tipuri primitive, Serializable, Parcelable.
Exemplu de salvare a textului dintr-un 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)
}