Sobes.tech
Junior — Middle

Jaké metody zajišťují zachování stavu dat při opětovném vytváření Activity v Androidu?

sobes.tech AI

Odpověď od AI

Pro zachování stavu dat při opětovném vytvoření aktivity v Androidu se obvykle používají metody ukládání a obnovení stavu přes Bundle.

Hlavní přístupy:

  • Přepsat metodu onSaveInstanceState(Bundle outState) a uložit potřebná data do outState.
  • V metodách onCreate(Bundle savedInstanceState) nebo onRestoreInstanceState(Bundle savedInstanceState) obnovit data ze savedInstanceState.

Pří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");
    }
}

Také lze použít ViewModel pro uchování dat, která přežijí rekonstrukci aktivity bez nutnosti je ručně ukládat do Bundle.