Sobes.tech
Junior — Middle

Aké metódy zabezpečujú zachovanie stavu údajov pri opätovnom vytváraní Activity v Android?

sobes.tech AI

Odpoveď od AI

Za uchovanie stavu dát pri opätovnom vytvorení Activity v Android sa zvyčajne používajú metódy na uloženie a obnovenie stavu cez Bundle.

Hlavné prístupy:

  • Prepísanie metódy onSaveInstanceState(Bundle outState) a uloženie potrebných dát do outState.
  • V metódach onCreate(Bundle savedInstanceState) alebo onRestoreInstanceState(Bundle savedInstanceState) obnoviť dáta zo savedInstanceState.

Príklad:

@Override
protected void onSaveInstanceState(Bundle outState) {
    super.onSaveInstanceState(outState);
    outState.putString("key", someValue);
}

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    if (savedInstanceState != null) {
        someValue = savedInstanceState.getString("key");
    }
}

Taktiež je možné použiť ViewModel na uloženie dát, ktoré prežijú rekonštrukciu Activity bez potreby ich manuálneho uloženia do Bundle.