【发布时间】:2018-08-13 06:07:12
【问题描述】:
我正在尝试在我的应用中采用 PagedList。我想要的功能之一是能够处理列表项中的按钮单击事件。
我正在考虑利用ViewModel 来监听点击事件,并取自示例https://medium.com/@star_zero/singleliveevent-livedata-with-multi-observers-384e17c60a16,我成功获得了点击事件。
原来如此,
LivePagedListBuilder(DeviceDataSourceFactory(), defaultConfig)
.build()
.observe(this, Observer { list ->
// here is where I have Observer for the click event
// for example, list?.forEach { it.event.observe(...) }
// but this block isn't called everytime
adapter.submitList(list)
})
正如上面的评论,当新项目添加到列表中时,我并不总是收到通知。我想我只从loadInitial 和loadAfter 得到过一次。链接 ref 后,PagedList 处理更新列表本身而不通知观察者。因此,我无法正确设置点击事件观察者。任何帮助,将不胜感激。被封了一个多星期。谢谢!
【问题讨论】:
标签: android android-pageradapter pagedlist android-paging