首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >LiveData正在复制MutableList

LiveData正在复制MutableList
EN

Stack Overflow用户
提问于 2020-05-29 12:58:11
回答 1查看 280关注 0票数 0

每当Firestore中有数据更改时,我都想更新我的回收视图项目。因此,我的活动具有以下代码:

代码语言:javascript
复制
taskViewModel.fetchedTaskLiveData.observe(
   this, Observer {
    if (it != null) {
     todoListAdapter.setListData(it)
     showRecyclerView()
   }

适配器内部setListData方法:

代码语言:javascript
复制
fun setListData(data: MutableList<Todo>) {
        //this.todoList.clear()
        this.todoList.addAll(data)
        notifyDataSetChanged()
    }

在这种情况下,每当获取更改的列表时,Recyclerview都会复制更改的列表,并将其添加到旧列表下。

如果"this.todoList.clear()“未被注释,则list将被清除,并且数据更改时不会显示任何数据。

我尝试了所有可能的解决方案,但我认为有一部分遗漏了。卡住了很长时间。非常感谢你的各种建议。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-05-31 07:59:52

所以我坚持这样做,并在12小时后发现了一个小小的变化。我用forEach修改了for,这改变了游戏规则。

此外,我正在清除列表项,然后再添加项目。

代码语言:javascript
复制
todoList.clear()
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/62079003

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档