首页 > 解决方案 > Pager构造函数中的initialKey参数有什么作用

问题描述

我试图了解构造函数initialKey中的作用Pager,但我找不到任何解释,甚至在官方文档中也找不到:

https://developer.android.com/reference/kotlin/androidx/paging/Pager#%3Cinit%3E(androidx.paging.PagingConfig,%20androidx.paging.Pager.Key,%20androidx.paging.RemoteMediator,%20kotlin.功能0)

在此处输入图像描述


谁能解释它的作用或工作原理以及如何使用它?

标签: androidpagerandroid-pagingandroid-paging-3

解决方案


经过测试,我相信该initialKey参数旨在指示列表中的位置,而不是页面。

我做了两个不同页面大小的测试。

包含 2000 个条目的表

页面大小

  • 10
  • 20
  • 100
  • 123

对于每个页面大小,我将以下内容用作initialKey位置 X 的项目

  • initialKey= X
    • 这使用项目位置作为initialKey
  • initialKey= X / 页面大小
    • 这使用该项目所在的页面

对于所有结果,当我使用 = X 时,该项目将始终正确加载到初始/第一个数据块中initialKey。当我将其用作页面大小时,它总是失败。

我不确定这是否是结论性的,但这是我对我的问题的有限测试得出的结论。


推荐阅读