首页 > 解决方案 > .setInitialLoadSizeHint、.setPageSize 和 .setInitialLoadSizeHint 是什么意思?setPrefetchDistance 在firestorepagination中的意思是什么?

问题描述

我想先加载 10 个文档,然后再加载 10 个,依此类推。这个对吗?

Firestore 分页是否一次加载所有数据?或者它是否限制来自 Firestore 的数据?

PagedList.Config config = new PagedList.Config.Builder()
              .setEnablePlaceholders(false)
              .setPrefetchDistance(2)
              .setInitialLoadSizeHint(10)
              .setPageSize(10)
             .build();

标签: javaandroidfirebasegoogle-cloud-firestorepagination

解决方案


Firestore 分页是否一次加载所有数据?

不,它总是会加载您传递给该setPageSize()方法的确切数量的元素。根据有关 PagedList.Config.Builder 的setPageSize(int pageSize)的官方文档:

定义一次从数据源加载的项目数。

这是setInitialLoadSizeHint(int initialLoadSizeHint)的信息:

定义首次加载时要加载的项目数。

这是setPrefetchDistance(int prefetchDistance)的信息:

定义访问必须离加载内容的边缘多远才能触发进一步加载。

并回答您的问题:

或者它是否限制来自 Firestore 的数据?

是的,它会限制数据,在您的情况下,它将被限制为每页 10 个元素。


推荐阅读