Каким образом можно обеспечить сохранение состояния пользовательского интерфейса в рамках фрагмента в мобильном приложении?

Для сохранения состояния пользовательского интерфейса во фрагменте Android обычно используют метод onSaveInstanceState(Bundle outState).

Короткий ответ

Что ответить на собеседовании

Для сохранения состояния пользовательского интерфейса во фрагменте Android обычно используют метод onSaveInstanceState(Bundle outState). В этом методе можно сохранить необходимые данные в Bundle, которые затем восстанавливаются в onViewCreated или onActivityCreated при пересоздании фрагмента.

Подробный разбор

Ответ с пояснениями

Для сохранения состояния пользовательского интерфейса во фрагменте Android обычно используют метод onSaveInstanceState(Bundle outState). В этом методе можно сохранить необходимые данные в Bundle, которые затем восстанавливаются в onViewCreated или onActivityCreated при пересоздании фрагмента.

Пример:

override fun onSaveInstanceState(outState: Bundle) {
    super.onSaveInstanceState(outState)
    outState.putString("key_text", editText.text.toString())
}

override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
    super.onViewCreated(view, savedInstanceState)
    if (savedInstanceState != null) {
        val savedText = savedInstanceState.getString("key_text")
        editText.setText(savedText)
    }
}

Также можно использовать ViewModel для хранения состояния, что позволяет сохранить данные при смене конфигурации без необходимости сохранять их в Bundle.

Практика в реальном времени

Подготовьтесь к следующему собеседованию

Interview Boost учитывает вакансию, резюме и технологии и помогает сформулировать ответ прямо во время интервью.

Начать подготовку