我已使用invalidate更新了DataSource
提供的数据,并将此新的PagedList
传递给了PagedListEpoxyController
。
添加和删除项目可以正确地更新列表。
但是,在更新中,调用了buildItemModel
函数,并且我使用与现有模型相同的ID正确返回了一个新模型。
在这里创建我的模型,这也是更改模型项时正确调用的函数:
return EnemyMessageModel(item, palette, hideAvatarAndName)
.id(item.id)
但是,在初始添加之后,永远不会再次调用模型的onBind
方法。根据文档,我希望bind(view: View, payloads: MutableList<Any>)
被调用,但不会。
如果我在其上方或下方滚动足够远然后向后滚动,由于视图被回收,它会重新绑定,然后它会更新,但如果在该单元格中,它不会调用bind
。
如何使模型更新生效?