Junior
Mit használ a Bundle osztály az Androidban?
sobes.tech MI
Válasz az MI-től
A Bundle az alkalmazás összetevői között adatátvitelre szolgál, például Activity, Fragment vagy Service.
Fő funkciók:
- Adattárolás: Különböző primitív típusokat (int, boolean, String stb.), primitív tömböket, valamint Parcelable vagy Serializable objektumokat tartalmazhat.
- Kulcs-érték: Az adatok kulcs-érték párok formájában tárolódnak, ahol a kulcs egy string.
- Állapot mentése: Az Activity állapotának mentésére és visszaállítására használják (például az
onSaveInstanceState()ésonRestoreInstanceState()metódusokban). - Fragment argumentumok: Az argumentumokat a
setArguments()metóduson keresztül lehet átadni egy Fragmentnek. - További adatok az Intentben: Lehetővé teszi további adatok átadását az Intentben a
putExtra()ésgetExtras()metódusok segítségével.
Használati példa adatok átadására Activity-k között:
// Adatok küldése az Activity A-ból az Activity B-be
val intent = Intent(this, ActivityB::class.java)
val bundle = Bundle()
bundle.putString("username", "john.doe")
bundle.putInt("age", 30)
intent.putExtras(bundle)
startActivity(intent)
// Adatok fogadása az Activity B-ben
val extras = intent.extras
if (extras != null) {
val username = extras.getString("username")
val age = extras.getInt("age", -1) // Alapértelmezett érték
}