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

Можно ли объяснить принцип работы Fragment Result API и его назначение в архитектуре Android-приложений?

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

sobes.tech AI

Fragment Result API в Android предназначен для обмена данными между фрагментами без необходимости напрямую связывать их друг с другом.

Принцип работы:

  • Один фрагмент устанавливает слушатель на определённый ключ результата.
  • Другой фрагмент отправляет результат с этим ключом.
  • Система передаёт данные слушателю, который их обрабатывает.

Это упрощает коммуникацию между фрагментами, особенно когда они не находятся в прямой иерархии или когда нужно избежать тесной связности.

Пример использования:

// В принимающем фрагменте
setFragmentResultListener("requestKey") { key, bundle ->
    val result = bundle.getString("bundleKey")
    // обработка результата
}

// В отправляющем фрагменте
val result = Bundle().apply { putString("bundleKey", "данные") }
setFragmentResult("requestKey", result)

Таким образом, Fragment Result API способствует более чистой архитектуре и облегчает управление навигацией и обменом данными между фрагментами.