Sobes.tech
Junior — Middle

Milyen módszereket ismersz az felhasználói felület állapotának megőrzésére alkalmazásokban?

sobes.tech MI

Válasz az MI-től

Az Android alkalmazásokban a felhasználói felület állapotának mentéséhez a következő módszereket használják:

  1. onSaveInstanceState(Bundle outState) és onRestoreInstanceState(Bundle savedInstanceState) — lehetővé teszik az Activity vagy Fragment állapotának mentését és visszaállítását az újraalkotás során (például képernyőforgatáskor).

  2. ViewModel — tárolja a UI-hoz kapcsolódó adatokat, és túléli a konfigurációs változásokat anélkül, hogy elveszítené az állapotot.

  3. SharedPreferences — egyszerű adatok (beállítások, zászlók) mentésére az alkalmazás munkamenetei között.

  4. Állapot mentése adatbázisokban vagy fájlokban — összetettebb vagy nagyobb adatok esetén.

  5. SavedStateHandle — a ViewModel-lel együtt lehetővé teszi a UI állapotának mentését és visszaállítását.

Példa egy szövegmező állapotának mentésére egy Activity-ben:

@Override
protected void onSaveInstanceState(Bundle outState) {
    super.onSaveInstanceState(outState);
    outState.putString("input_text", editText.getText().toString());
}

@Override
protected void onRestoreInstanceState(Bundle savedInstanceState) {
    super.onRestoreInstanceState(savedInstanceState);
    String text = savedInstanceState.getString("input_text");
    editText.setText(text);
}