Sobes.tech
Назад к вопросам
Junior — Middle
72

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

Компании, где спрашивали
Netris

Ответ от нейросети

sobes.tech AI

Для сохранения состояния пользовательского интерфейса во фрагменте 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.