我有一个由100行组成的JSON数据。如何在启动应用程序时显示前10行,并在用户向下滚动时显示其他10行?
我发现的所有解决方案都更侧重于使用最后一个ID回拨服务器。
我想要的是,继续添加应用程序启动时先前加载的JSON数据(100行)中的视图。
任何人都知道我应该怎么做?
答案 0 :(得分:2)
我想要的是,继续添加应用程序启动时先前加载的JSON数据(100行)中的视图。
除非我误解你的问题。 RecyclerView
应该自己处理数据加载。
如果您的数据已经从服务器加载并存储在手机上,那么RecyclerView
将处理行的加载,它只会将屏幕上显示的行保留在内存中以及用户滚动时(向上或向下)并到达新行,它将加载它们并在屏幕上显示它们并删除不再显示的行。因此,只需将所有数据(100行)发送到recyclerAdapter
,它将自动处理内存管理和行加载。
答案 1 :(得分:1)
@ A.R.H回答的是正确的。要进一步添加,以防您需要向RecyclerView
的适配器添加更多元素。即假设您在适配器中有100个元素,现在您需要再检索10个元素,然后您可以使用' pull来刷新'这样做。有各种图书馆。然而,我发现非常直截了当的是:Phoenix。
您可以从onRefreshListener()
:
mPullToRefreshView = (PullToRefreshView) findViewById(R.id.pull_to_refresh);
mPullToRefreshView.setOnRefreshListener(new PullToRefreshView.OnRefreshListener() {
@Override
public void onRefresh() {
mPullToRefreshView.postDelayed(new Runnable() {
@Override
public void run() {
mPullToRefreshView.setRefreshing(false);
}
}, REFRESH_DELAY);
}
});
在run方法中,您可以调用方法来检索数据。
除此之外,无需担心滚动功能;正如你所问:
我有一个由100行组成的JSON数据。如何在启动应用程序时显示前10行,并在用户向下滚动时显示其他10行?
与ListView
不同,RecyclerView
仅将项目加载到适合屏幕的内存中。因此,没有特别需要滚动功能。但是,如果出于用户体验目的,您可以使用Phoenix
库实现相同目的。希望它有所帮助!