Sobes.tech
Junior — Middle

Jakie metody zapewniają zachowanie stanu danych podczas ponownego tworzenia Activity w Android?

sobes.tech AI

Odpowiedź od AI

Aby zachować stan danych podczas ponownego tworzenia Activity w Androidzie, zazwyczaj używa się metod zapisywania i przywracania stanu za pomocą Bundle.

Główne podejścia:

  • Nadpisanie metody onSaveInstanceState(Bundle outState) i zapisanie potrzebnych danych w outState.
  • W metodzie onCreate(Bundle savedInstanceState) lub onRestoreInstanceState(Bundle savedInstanceState) przywrócenie danych z savedInstanceState.

Przykład:

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

Można również użyć ViewModel do przechowywania danych, które przetrwają ponowne tworzenie Activity bez konieczności ręcznego zapisywania ich w Bundle.