使用视图从房间 android 获取数据

getting data from room android with view

一周前,我学习了回收器视图,并在 XML 布局和硬编码数据或共享首选项中使用适配器和片段与我一起工作,但现在我学习了我遵循的房间数据库 google 关于如何显示数据和所有内容的开发者网站,我已经尝试了三天但没有结果。

RecyclerView recyclerView = findViewById(R.id.mainTaskView);
recyclerView.setLayoutManager(new LinearLayoutManager(this));
recyclerView.setAdapter(new TaskAdapter(tasks));

我试图获取数据库中的所有项目,但它一直给我 null。

[关于创建代码][1] [1]: https://i.stack.imgur.com/Txtil.png

如果您想查看所有文件,这是我的存储库。

我可以使用 allowQueriesInMainThread,但不推荐这样做,因此我正在努力实现空间和视图的最佳实践。

需要观察者getAllTask()数据导致数据在workThread查询,显示在mainThread
您可以使用 Room @QUERY 函数查询数据和 return LiveData。

@Query("SELECT * FROM tableName")
public LiveData<List<Entity>> getAllTask() 
viewModel.getAllTask().observer(this,new Observer{
    @override
    public void onChange(List<Entity> list){
        adapter.setData(list)
        adapter.notifyDataSetChanged()
    }
})

我忘记了 java LiveData.observer。好像是这样