我正在开发一个应用程序,它将通过从Web服务获取JSON来显示RecyclerView
中的一些项目。如果用户在列表的末尾滚动,则应该获取更多数据。对于UI,我实现了EndlessScrollListener,但我不确定用正确的页面索引(例如http://some.service/data&page=1)获取实际JSON的正确选项。为了从HTTP资源中读取数据,我决定使用Volley库。如果我只使用Volley本身,那么手动处理onConfigurationChanged
事件将是一个问题。
我知道AsyncTaskLoader
可以帮助我解决我的问题,但看起来它是为了定期获取数据而设计的。在我的情况下,我需要按需加载数据(当用户向下滚动时)。
我还考虑过实现同步适配器来获取数据,游标加载器和内容提供商以在离线模式下保存/读取数据,但现在看起来很难,因为我是一个Android新手。
你能提出什么建议?
我最感兴趣的是解决方案的架构部分。
答案 0 :(得分:0)
json的反序列化有时也是一项艰巨的任务,所以你需要做的是使用volley进行请求,然后在结果中使用json字符串,然后在异步任务中对反向序列化进行反序列化,使其具有您需要的结构,然后只进行设置视图并将最终数据附加到其中。如果您加载列表并希望在滚动here is sample
时加载它