Junior
За какво се използва класът Bundle в Android?
sobes.tech AI
Отговор от AI
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) // Стойност по подразбиране
}