22得票3回答
安卓分页3 - 滚动和加载新页面时出现闪烁、故障或位置跳跃

大家好,我正在使用 Android Jetpack Paging library 3,创建了一个实现网络+数据库场景的新闻应用程序,并且正在按照 Google 的 CodeLab 进行操作https://codelabs.developers.google.com/codelabs/andro...

18得票4回答
如何使用Jetpack Compose分页与LazyVerticalGrid

我试图使用LazyVerticalGrid显示分页项。我正在尝试的代码如下所示。 我试图使用LazyVerticalGrid显示分页项。我正在尝试的代码如下所示。 val categories = repo.categories.collectAsLazyPagingItems() L...

17得票2回答
了解 PagingSource 的 getRefreshKey

我从Paging 2迁移到了Paging 3库,现在我使用PagingSource从服务器加载数据页。但是我不理解必须重载的getRefreshKey方法。我找到了一些代码示例,根据用于获取后续页面的键来实现它,但我仍然不明白。基于这些示例,我编写了以下代码:override fun getR...

17得票1回答
Android MVI 使用 StateFlow 和 Paging 3

我正在尝试使用状态流和分页3来实现Android MVI架构,但当我有一个包含分页数据的视图状态时,我感到困惑。 问题是,我将视图状态从视图模型公开为状态流对象,但现在在该视图状态中,我有另一个来自分页库的流对象。 在状态流中放置一个流对象是否可以?如果不行,我应该怎么做? 这是我用于更...

15得票1回答
在刷新调用之间清除“PagingDataAdapter”

我正在使用Paging 3 PagingDataAdapter根据给定的查询搜索数据库。 每次提交新的查询时,我都会在适配器上调用refresh()方法。问题是,直到新数据加载完成,旧数据仍然存在。 有没有一种方法可以从列表中删除所有项目,以便在加载进行时不会出现任何项目?此外,我使用Conc...

11得票6回答
分页3 - 在PagingDataAdapter完成刷新并且DiffUtil完成差异比较后如何滚动到RecyclerView的顶部?

我正在使用带有RemoteMediator的Paging 3,它在从网络获取新数据时显示缓存数据。 当我通过调用PagingDataAdapter上的refresh()来刷新它时,我希望我的RecyclerView在刷新完成后滚动到顶部。在codelabs中,他们尝试通过以下方式通过loadS...

11得票4回答
使用RxJava时,在分页3库中进行刷新

homeViewModel.pagingDataFlow.subscribe(expensesPagingData -> { expenseAdapter.submitData(getLifecycle(), expensesPagingData); ...

10得票2回答
Android Paging 3如何对数据进行过滤、排序和搜索

我正在尝试实现分页功能,使用了Room技术。花费了很长时间才认识到这已经为我完成了所有操作。但是我现在需要能够过滤搜索和排序我的数据。我想暂时将其保留为LiveData,以后可以切换到flow。 我有一个过滤搜索和排序的方法,它完美地运行着。 @SuppressLint("Defau...

10得票4回答
Android:LoadStateAdapter未在recyclerview网格布局中居中

我目前的问题是,我的 LoadStateAdapter 显示加载和错误状态,但它没有居中在我的 recyclerview 中,而 recyclerview 使用的是 gridlayout 作为 layoutmanager。我在官方的 Android 开发者网站上没有找到有关这个问题的信息,所以...

10得票3回答
更新当前页面或更新 Paging 3 library Android Kotlin 中的数据

我在使用Android Kotlin中的Paging 3库时比较新手。我想要无限获取数据。所以我发现Paging 3库在我的情况下非常有用。我使用PagingSource创建了一个列表,但是我没有使用Room,并且我有一个嵌套的RecyclerView。我使用了带有DiffUtil的Pagin...