在回收器中间装载更多物品

时间:2016-03-08 07:11:22

标签: android

在我的recyclerview中间,我无法构建一个Twitter样式加载更多按钮。我目前正在使用syncAdapter在将数据插入数据库之前获取新数据。我还有一个ContentProvider,并且我使用了一个CursorLoader的Loader来更新recycler_view的适配器。

当syncAdapter获取比应用程序中存在的数据更新的数据时,最后一个新项目提取的数据和上一个顶级项目之间的数据可用更多在中间显示一个LoadMore按钮。

我在适配器中激活loadMore按钮的可能逻辑是,新获取的数据集的最后一行id在数据库中是否存在。但问题是我不知道在哪里执行这种逻辑。

我无法在onLoadFinished中创建它,因为它是在插入新数据后调用的,因此我无法根据旧数据检查传入数据,因为那时是id传入数据集中的最后一行已写入数据库。

我想在插入数据库之前解析传入的json时进行检查。我可以检查收到的最后一个id是否存在于db中,并且知道是否需要加载更多按钮,但是从那里让适配器知道这似乎并不重要。由于数据是在另一个线程(syncadapter或我已经获得的服务)上获取的,因此我必须写出在SharedPreferences中的两行之间存在loadmore或发送广播的事实。有没有更优雅的方式来做这件事,也许我错过了什么。

我愿意接受建议。

0 个答案:

没有答案