Junior — Middle
¿Cómo se puede garantizar la conservación del estado de la interfaz de usuario dentro de un fragmento en una aplicación móvil?
sobes.tech AI
Respuesta de la IA
Для сохранения состояния пользовательского интерфейса во фрагменте 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.