Мое приложение состоит из одного действия.У этого есть навигационный ящик, который изменяет фрагмент в деятельности.Одним из элементов панели навигации является экран настроек, который является фрагментом настройки androidx и наследует PreferenceFragmentCompat
.Приложение использует шаблон MVVM
В моей модели представления других фрагментов я вызываю метод репозитория, который получает данные из Интернета, а затем сохраняет локально, используя room db, и возвращает LiveData<List<MyData>>
, который используется для отображения пользовательского интерфейса фрагмента.
Теперь мне нужно такое поведение: по умолчанию извлекать данные только из локальной базы данных и, если есть изменения в предпочтениях, извлекать данные из Интернета и также сохранять локально.
, так где я должен слушать измененияв префе?Я думаю, что возможно MainActivity, но как другие фрагменты узнают об этом изменении?
ОБНОВЛЕНИЕ 1 У меня есть четыре фрагмента: прошлое, настоящее, будущее и настройки.всякий раз, когда открывается любой из первых трех фрагментов, я хочу знать, изменилось ли предпочтение или нет.