Sobes.tech
Назад к вопросам
Junior — Middle
70

Каким образом можно передавать данные между фрагментами в приложении?

Компании, где спрашивали
Ozon FreshOzon Fresh

Ответ от нейросети

sobes.tech AI

Данные между фрагментами в Android можно передавать несколькими способами:

  1. Через Bundle при создании фрагмента — передать данные в аргументах фрагмента с помощью setArguments() и получить их через getArguments().
val fragment = MyFragment()
val bundle = Bundle()
bundle.putString("key", "value")
fragment.arguments = bundle
  1. Через ViewModel, общую для активности и фрагментов — использовать ViewModel для хранения и обмена данными между фрагментами.

  2. Через интерфейсы и колбэки — фрагмент вызывает методы активности, которая передаёт данные другому фрагменту.

  3. Через SharedPreferences или базу данных — для более постоянного хранения и обмена.

Наиболее рекомендуемый способ — использовать ViewModel с LiveData для реактивного и безопасного обмена данными между фрагментами.