Back to questions
Ozon Fresh
Junior — Middle
69
Каким образом можно передавать данные между фрагментами в приложении?
Companies where asked
Answer from AI
sobes.tech AI
Данные между фрагментами в Android можно передавать несколькими способами:
- Через Bundle при создании фрагмента — передать данные в аргументах фрагмента с помощью
setArguments()и получить их черезgetArguments().
val fragment = MyFragment()
val bundle = Bundle()
bundle.putString("key", "value")
fragment.arguments = bundle
-
Через ViewModel, общую для активности и фрагментов — использовать
ViewModelдля хранения и обмена данными между фрагментами. -
Через интерфейсы и колбэки — фрагмент вызывает методы активности, которая передаёт данные другому фрагменту.
-
Через SharedPreferences или базу данных — для более постоянного хранения и обмена.
Наиболее рекомендуемый способ — использовать ViewModel с LiveData для реактивного и безопасного обмена данными между фрагментами.