Android 将LiveData与RecyclerView一起使用

Android 将LiveData与RecyclerView一起使用,android,android-recyclerview,android-architecture-components,Android,Android Recyclerview,Android Architecture Components,我尝试将RecyclerView与LiveData一起使用,基本上与中描述的完全一样,这是我正在尝试做的事情,我认为这是一个非常正常的用例。(还有一个与我的观点有些一致的观点) 目标:在RoomDB中的表中进行更新通过LiveData传播,以在RecyclerView中显示为项目 我在上一篇文章中读到,它看起来很好,但我说我不需要为了性能而分成几页。在那篇文章中,我不完全理解所有内容 以下是文章中的一些代码,我对此发表了评论,这些代码可能与我的问题有关: class MyActivity ext

我尝试将
RecyclerView
LiveData
一起使用,基本上与中描述的完全一样,这是我正在尝试做的事情,我认为这是一个非常正常的用例。(还有一个与我的观点有些一致的观点)

目标:RoomDB中的表中进行更新通过
LiveData
传播,以在
RecyclerView
中显示为项目

我在上一篇文章中读到,它看起来很好,但我说我不需要为了性能而分成几页。在那篇文章中,我不完全理解所有内容

以下是文章中的一些代码,我对此发表了评论,这些代码可能与我的问题有关:

class MyActivity extends AppCompatActivity {
    @Override
    public void onCreate(Bundle savedState) {
        super.onCreate(savedState);
        MyViewModel viewModel = ViewModelProviders.of(this).get(MyViewModel.class);
        RecyclerView recyclerView = findViewById(R.id.user_list);
        UserAdapter<User> adapter = new UserAdapter();

        //Does the following line mean that they set the list on the adapter on each change in the underlying data?
        viewModel.usersList.observe(this, pagedList -> adapter.setList(pagedList));
        recyclerView.setAdapter(adapter);
    }
}
类MyActivity扩展了AppCompatActivity{
@凌驾
创建公共void(Bundle savedState){
super.onCreate(savedState);
MyViewModel viewModel=ViewModelProviders.of(this.get)(MyViewModel.class);
RecycleView RecycleView=findViewById(R.id.user\u列表);
UserAdapter=新的UserAdapter();
//下面这行是否意味着他们在基础数据的每次更改上都在适配器上设置了列表?
viewModel.usersList.observe(这个,pagedList->adapter.setList(pagedList));
recyclerView.setAdapter(适配器);
}
}
观察
中,他们只是为适配器设置了列表,在当前设置中,我有
notifyDataSetChanged()
(如链接的问题),我意识到这是不好的。我不使用我想是我在
PagedListAdapter
中免费得到的东西,这对我很有吸引力。我不会仅仅在
观察
中设置适配器列表,在我看来,这正是
PagedListAdapter
做一些繁重工作的原因

如果我不想利用分页功能,我还应该使用分页组件吗?(让它为我做不同的事情?)

如何使用架构组件尽可能顺利地实现目标


编辑:还注意到分页组件目前处于alpha状态

我真的在等待问题的正确答案,但即使一年后也没有真正的解决方案,所以唯一的解决方案是使用diffUtil并调用notifyChange。对此有何更新?