1

I wanna fetch data from roomDB when variable changed. When folderName changed and when task changed. I use MediatorLiveData, but it doesn't work. How can I fix it?

This is a view model class.

 val folderName = ViewModelFolder.selectedFolder // MutableLiveData<String>
 val filteredTasks = MediatorLiveData<LiveData<List<Task>>>()
 init {
   filteredTasks.addSource(folderName) { name ->
     filteredTasks.value = getTasksByFolderIsDone(name, false)
   }
}

Main activity

taskViewModel.filteredTasks.observe(viewLifecycleOwner, Observer { tasks ->
  tasks?.let { taskAdapter.setTasks(tasks as List<Task>) }
})
Pytan
  • 1,138
  • 11
  • 28

0 Answers0