Back to questions
Junior — Middle
76
Каким образом вы передаете информацию между двумя фрагментами в приложении?
Answer from AI
sobes.tech AI
Для передачи информации между двумя фрагментами в Android обычно используют несколько подходов:
-
Через Activity: Фрагменты общаются через родительскую Activity, которая выступает посредником.
-
Использование ViewModel с общим жизненным циклом Activity: Создаётся ViewModel, связанная с Activity, и оба фрагмента получают доступ к ней, обмениваясь данными через LiveData.
-
Аргументы фрагмента: При создании второго фрагмента можно передать данные через Bundle с помощью метода
setArguments().
Пример передачи через ViewModel:
class SharedViewModel : ViewModel() {
val selectedData = MutableLiveData<String>()
}
// В первом фрагменте
sharedViewModel.selectedData.value = "Данные для передачи"
// Во втором фрагменте
sharedViewModel.selectedData.observe(viewLifecycleOwner) { data ->
// Используем полученные данные
}