Junior — Middle
Androidда Fragmentтер арасында маалымат алмашуу үчүн кандай ыкмалар колдонулат?
sobes.tech AI
AIден жооп
Androidда Fragmentтер арасында маалымат алмашуу бир нече ыкмалар менен ишке ашырылышы мүмкүн:
-
Activity аркылуу — фрагменттер ата-эне Activity аркылуу байланышат, ал ортомчу катары кызмат кылат. Мисалы, бир фрагмент Activityнин методуна чакырып, маалыматтарды өткөрөт, жана Activity аларды башка фрагментке өткөрөт.
-
Activityнин жашоо цикли менен ViewModel колдонуу — жалпы ViewModel, Activity менен байланышкан, LiveData аркылуу фрагменттердин маалымат алмашуусуна мүмкүндүк берет.
-
Интерфейстерди колдонуу — фрагмент маалыматтарды өткөрүү үчүн интерфейс аныктайт, аны Activity ишке ашырат.
-
EventBus же башка окуя китепканалары — компоненттер ортосунда окуяларды жөнөтүүгө мүмкүндүк берет.
ViewModel менен мисал:
class SharedViewModel : ViewModel() {
val selected = MutableLiveData<String>()
fun select(item: String) {
selected.value = item
}
}
// Fragment Aда
viewModel.select("Маалыматтар")
// Fragment Bда
viewModel.selected.observe(viewLifecycleOwner) { data ->
// маалыматтарды иштетүү
}