Sobes.tech
Junior

Androidда Bundle классы эмне үчүн колдонулат?

sobes.tech AI

AIден жооп

Bundle, колдонмодогу компоненттердин ортосунда маалыматтарды өткөрүү үчүн колдонулат, мисалы, Activity, Fragment же Service.

Негизги функциялары:

  • Маалыматтарды сактоо: Түрдүү негизги маалымат түрлөрүн (int, boolean, String жана башка), негизги массивдерди жана Parcelable же Serializable объекттерин камтышы мүмкүн.
  • Ключ-маалымат: Маалыматтар клуч-баа жуптары түрүндө сакталат, анда клуч — саптама.
  • Күйдү сактоо: Activityнин абалын сактоо жана калыбына келтирүү үчүн колдонулат (мисалы, onSaveInstanceState() жана onRestoreInstanceState() методдорунда).
  • Fragment үчүн аргументтер: setArguments() аркылуу Fragmentке аргументтер өткөрүү үчүн колдонулат.
  • 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) // Дефолт мааниси
}