Sobes.tech
Junior — Middle

Ilovada ikkita bo'lak o'rtasida qanday ma'lumot uzatyapsiz?

sobes.tech AI

AIdan javob

Androidда икки фрагмент орасида маълумот узатиш учун одатда бир неча ёндашувлар қўлланилади:

  1. Activity орқали: Фрагментлар ота-она Activity орқали мулоқот қилади, у орқали ўртачилик қилинади.

  2. ViewModelдан фойдаланиш, у Activity билан умумий ҳаёт циклга эга: ViewModel яратилади, у Activity билан боғланган ва иккала фрагмент ҳам унга киришади, LiveData орқали маълумот алмашинадилар.

  3. Фрагмент аргументлари: Иккинчи фрагментни яратишда, маълумотларни setArguments() усули орқали Bundle орқали ўтказиш мумкин.

ViewModel орқали узатиш мисоли:

class SharedViewModel : ViewModel() {
    val selectedData = MutableLiveData<String>()
}

// Биринчи фрагментда
sharedViewModel.selectedData.value = "Ўтказиладиган маълумотлар"

// Иккинчи фрагментда
sharedViewModel.selectedData.observe(viewLifecycleOwner) { data ->
    // Олинган маълумотларни фойдаланиш
}