Sobes.tech
Junior — Middle

Кои методи знаете за запазване на състоянието на потребителския интерфейс в приложения?

sobes.tech AI

Отговор от AI

За запазване на състоянието на потребителския интерфейс в Android приложения се използват следните методи:

  1. onSaveInstanceState(Bundle outState) и onRestoreInstanceState(Bundle savedInstanceState) — позволяват запазване и възстановяване на състоянието на Activity или Fragment при тяхното повторно създаване (например при завъртане на екрана).

  2. ViewModel — съхранява данни, свързани с UI, и преживява промените в конфигурацията, без да губи състоянието.

  3. SharedPreferences — за запазване на прости данни (настройки, флагове) между сесиите на приложението.

  4. Запазване на състоянието в база данни или файлове — за по-сложни или големи данни.

  5. SavedStateHandle — в съчетание с ViewModel позволява запазване и възстановяване на състоянието на UI.

Пример за запазване на състоянието на текстово поле в 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);
}