Sobes.tech
Junior — Middle

Jakie metody znasz do zapisywania stanu interfejsu użytkownika w aplikacjach?

sobes.tech AI

Odpowiedź od AI

Aby zapisać stan interfejsu użytkownika w aplikacjach Android, używa się następujących metod:

  1. onSaveInstanceState(Bundle outState) i onRestoreInstanceState(Bundle savedInstanceState) — pozwalają na zapisanie i przywrócenie stanu Activity lub Fragmentu podczas ich ponownego tworzenia (np. podczas obrotu ekranu).

  2. ViewModel — przechowuje dane związane z UI i przetrwa zmiany konfiguracji, nie tracąc stanu.

  3. SharedPreferences — do zapisywania prostych danych (ustawień, flag) między sesjami aplikacji.

  4. Zapis stanu w bazie danych lub plikach — dla bardziej złożonych lub dużych danych.

  5. SavedStateHandle — w połączeniu z ViewModel pozwala na zapisywanie i przywracanie stanu UI.

Przykład zapisywania stanu pola tekstowego w Activity:

@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);
}