образец
я есть ViewModel с именем SharedViewModel:
public class SharedViewModel<T> extends ViewModel {
private final MutableLiveData<T> selected = new MutableLiveData<>();
public void select(T item) {
selected.setValue(item);
}
public LiveData<T> getSelected() {
return selected;
}
}
Я реализую его на основе примера SharedViewModel на справочной странице Google View View:
Очень часто два или более фрагмента в упражнении должны общаться друг с другом. Это никогда не бывает тривиально, так как оба фрагмента должны определять описание интерфейса, а действие владельца должно связывать их вместе. Более того, оба фрагмента должны обрабатывать случай, когда другой фрагмент еще не создан или не виден.
У меня есть два фрагмента, называемыеListFragment
а такжеDetailFragment
.
До сих пор я использовал эти два фрагмента внутриMasterActivity
, И все работало хорошо.
Я получил ViewModel вListFragment
выбрал значение для использованияDetailFragment
.
mStepSelectorViewModel = ViewModelProviders.of(getActivity()).get(SharedViewModel.class);
Тем не менее, теперь мне нужно, что в некоторых случаяхListFragment
(макет для другой конфигурации устройства), чтобы добавить к другой деятельности, называемойDetailActivity
, Есть ли способ сделать это аналогично приведенному выше примеру?