问题标签 [android-paging-library]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1605 浏览

android - Paging 3 - 为什么我的重试页脚没有调用我的 PagingSource 的加载方法?

我已经按照代码实验室在我的应用程序中实现了 Paging 3,并通过以下方式添加了一个带有重试按钮的页脚withLoadStateHeaderAndFooter

当我单击页脚 ViewHolder 中的重试按钮时,adapter.retry()确实调用了,所以那里的设置是正确的。load但是,此方法永远不会像通常那样调用我的 PagingSource方法。

我的 PagingSource (我检查了LoadResult.Error在错误情况下是否正确返回):

我的存储库:

在我的片段中,我这样做:

有趣的是,空列表的重试按钮有效:

0 投票
1 回答
1242 浏览

android - 来自分页库 3 的 PagingSource,结果为回调

目前,我正在尝试迁移到新的 Android 分页 3 库,但如果我看对了,我不能:(

我使用 AWS Amplify 作为我的后端数据源,并希望在分页库的 PaginSource 类的新加载函数中包含一个查询。

因为方法 enqueues 给了我一个 void 返回,所以我不知道如何等待它或触发像分页库 2 中那样的回调。在分页 2 中,我可以选择调用 callback.onResult(result.data, result.在 enqueue().onResponse 函数中的 nextLink) 方法,而无需返回任何内容。

有没有办法实现它或者我应该坚持使用第 2 页?

0 投票
4 回答
5646 浏览

android - 第 3 页初始加载未显示

我正在使用第 3 页,除了初始加载状态外,一切正常。我正在添加withLoadStateFooter,但它在第一次调用时从不显示加载状态

这是我的实现

负载状态适配器

加载状态视图持有人

寻呼源

查看模型

活动

MyPagingAdapter很简单PagingDataAdapter

简而言之; 加载状态工作正常,但在第一次请求时没有显示。任何人都可以帮忙吗?

当前版本3.0.0-alpha04

0 投票
1 回答
3143 浏览

android - Android Jetpack Paging 3:带 Room 的 PagingSource

我正在使用最新的 Jetpack 库。
Pagination3 版本:3.0.0-alpha05
房间版本:2.3.0-alpha02

我的实体有 Long asPrimaryKey和 Room 可以PagingSource为其他Int类型生成。

因此,我尝试实现我的 custom PagingSource,就像文档建议的那样。

问题是Data Refresh,因为 Room 生成的代码处理数据刷新,而我的代码无法处理这种情况。

任何建议如何实现自定义PagingSourceRoom可以处理Data Refresh

0 投票
2 回答
911 浏览

android - 在 Google Paging Library 3 中没有任何滚动的情况下,Api 调用不会一次又一次地停止调用

我想实现分页以在我的应用程序中显示我想要的项目视图的一大块列表。这就是为什么我选择使用 Google 新发布的分页库,即分页库 3。我在我的应用程序中使用 Rxjava、Livedata 和 ViewModel。实现分页库后,我面临一个奇怪的问题。当我调用获取列表的方法时,它一次又一次地调用并且没有停止调用。事实上,虽然我没有滚动列表,但它会自动增加页码。这是我尝试过的代码

JobListRestApi.kt

JobListDataSource.kt

JobListRepositoryImpl.kt

JobListViewModel.kt

JobListFragment.kt

并且输出日志是 https://base-url/job/list?page=1

https://base-url/job/list?page=2

https://base-url/job/list?page=3

https://base-url/job/list?page=4

https://base-url/job/list?page=5

https://base-url/job/list?page=6

https://base-url/job/list?page=7

除非我转到 RecyclerView 中块的最后一项并滚动列表,否则如何停止调用串行 api

0 投票
1 回答
2330 浏览

android - Android Paging 3 不显示 Loadstate Adapter

我已经按照教程将 Loadstate 适配器添加到 Android Paging 3 上的 Recyclerview 适配器,但目前它没有显示。这就是我更新适配器的方式。

这就是我添加 LoadState 适配器的方式

这是 LoadStateAdapter 的要点,也是Activity 布局加载状态项

适配器工作正常,我还可以通过添加 LoadStateListener 来获取负载状态。只有负载状态适配器不工作。我已经跟踪并克隆了它,它运行良好。我的可能是什么问题?

0 投票
1 回答
382 浏览

java - 使用android分页库的动态查询

我正在制作一个新闻应用程序,我正在为我的新闻 recyclerview 使用分页库。我想根据类别显示新闻。我从对话框中选择类别并将其分配给主要活动中的 texview。是我的应用程序。我想观察该值并根据该值动态发送请求。我将改造用作网络库。

MainActivity.java

MainActivityViewModel.java

新闻数据源.java

新闻数据源工厂.java

RetroApi.java

RetroService.java

新闻适配器.java

0 投票
1 回答
507 浏览

android - 如何从每页项目数和总项目数 API 响应中获取总页数?

我正在从删除端点获取数据。数据响应仅包含项目总数,但不包含总页数。鉴于我只有总项目数和每页项目数,如何计算总页数?我需要这个,因为我正在尝试设置分页库

例如:

想法是 totalItemCount 大于 10 + 1 但小于或等于 20,totalPages 为 2;并且 totalItemCount > 10 + 10 + 1 但小于或等于 30,totalPages = 3 等等...

我无法使用 Kotlin 做出一个好的算法来计算这个

0 投票
0 回答
490 浏览

android - 如何从 PagingData 获取数据对象到达 ViewHolder 之前?

我想PagingData<T>在某个中间类中获取对象的数据,就像ViewModel在它到达之前一样,Adapter并将其属性收集为列表。我可以通过 访问代码,flatmap但我不想应用任何更改。此外,这种访问是无用的,因为整个块在订阅 observable 之后运行,ViewModel所以它无法通过ViewModel运行来访问。

另一个例子,假设我们有这样的场景:我将在分页数据到达视图持有者之前调用另一个 API。分页数据需要填充新的 API 调用响应。如何等待第二次 API 调用更新分页数据的数据?

0 投票
1 回答
2289 浏览

android - androidx.paging.PagedListAdapter' 已弃用

我在我的 android 项目中使用 androidx 的分页库的 alpha 版本。它曾经工作正常,但今天我的 android 工作室开始显示有关PagedListAdapter类的弃用警告。我在google上搜索并查看了android开发者网站上的官方文档,但没有找到任何东西。

我正在使用以下依赖项:

附上截图供参考:附上截图供参考

这只是一个 android studio 的故障还是真的被弃用了?