Junior — Middle
Mit kell figyelembe venni az alkalmazás állapotának mentésekor az onSaveInstanceState módszerrel?
sobes.tech MI
Válasz az MI-től
Az onSaveInstanceState használata során fontos megjegyezni:
- Csak kis és szükséges adatokat mentsen, például a felhasználói felület állapotát (szöveg a mezőkben, kiválasztott elemek).
- Ne mentse nagy objektumokat vagy adatokat, amelyeket más módon lehet helyreállítani (például adatbázisból vagy hálózatból).
- Az onSaveInstanceState a tevékenység megsemmisítése előtt hívódik meg, például a képernyő forgatásakor.
- Az adatok helyreállítása az onCreate vagy az onRestoreInstanceState módszerben történik.
- Használjon Bundle-t az adatok mentésére, támogatja az primitív típusokat, Serializable-t, Parcelable-t.
Példa a szöveg mentésére egy EditText-ből:
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)
}