Я использую компонент навигации, и мне нужно передать данные обратно из фрагмента B обратно во фрагмент A. Я прочитал из здесь , что мне нужно использовать SharedViewModel .
скажем, например, у меня есть RestaurantListFragment
, которые показывают список ресторанов. для работы с сетью и бизнес-логикой c для этого фрагмента я делаю RestaurantListViewModel
.
второй фрагмент, который у меня есть, RestaurantDetailFragment
. и для обработки некоторых действий и бизнес-логики c в этом фрагменте я создаю RestaurantDetailViewModel
.
, теперь мне нужно передать данные из RestaurantDetailFragment
обратно в RestaurantListFragment
, и сказано, что мне нужно использовать SharedViewModel. но теперь я в замешательстве.
если я использую SharedViewModel для передачи данных, то у меня будет 2 viewModel во фрагменте? в RestaurantDetailFragment
у меня будет RestaurantDetailViewModel
и XSharedViewModel
, а в RestaurantDetailFragment
у меня будет RestaurantListViewModel
и XSharedViewModel
?
, поэтому в SharedViewModel он содержит только данные, которые необходимо передать обратно к предыдущему фрагменту?
или мне просто нужно сделать одну модель представления (SharedViewModel), которая будет обслуживать мои два фрагмента? (Мне больше не нужно создавать RestaurantDetailViewModel
и RestaurantListViewModel
). Я запутался.