Junior
¿Para qué se utiliza la clase Bundle en Android?
sobes.tech AI
Respuesta de la IA
Bundle используется для передачи данных между компонентами приложения, такими как Activity, Fragment или Service.
Основные функции:
- Хранение данных: Может содержать различные примитивные типы данных (int, boolean, String и т.д.), массивы примитивов, а также Parcelable или Serializable объекты.
- Ключ-значение: Данные хранятся в виде пар ключ-значение, где ключом является строка.
- Сохранение состояния: Применим для сохранения и восстановления состояния Activity (например, в методах
onSaveInstanceState()иonRestoreInstanceState()). - Аргументы Fragment: Используется для передачи аргументов в Fragment через метод
setArguments(). - Дополнительные данные в Intent: Позволяет передавать дополнительные данные в Intent с помощью методов
putExtra()иgetExtras().
Пример использования для передачи данных между Activity:
// Отправка данных из Activity A в Activity B
val intent = Intent(this, ActivityB::class.java)
val bundle = Bundle()
bundle.putString("username", "john.doe")
bundle.putInt("age", 30)
intent.putExtras(bundle)
startActivity(intent)
// Получение данных в Activity B
val extras = intent.extras
if (extras != null) {
val username = extras.getString("username")
val age = extras.getInt("age", -1) // Значение по умолчанию
}