小编viv*_*odi的帖子

更新当前页面或更新分页 3 库中的数据 Android Kotlin

我是 android kotlin 中分页 3 库的新手。我想要无限数据。所以我发现 Paging 3 库对我的情况很有帮助。我使用PagingSource创建了一个列表。我没有使用 Room。我嵌套了recyclerView。我正在将PagingDataAdapterdiff util用于我的 Recyclerview。我使用了codelab推荐的分页库教程我成功了,没有任何问题。我面临更新项目的困难。我使用分页源创建列表,在列表中我有一些来自服务器的数据。我完全没有任何问题。但是如何更新适配器或通知数据在 reyclerview 中发生了变化。我已经有机制来获取更新的列表。我搜索了如何在某个地方更新适配器,但每个地方都提到使用来自DataSource 的invalidate()数据源用于分页 2对吗?现在,根据Migrate to Paging 3 中的文档,这是在Paging 3 中。我使用 Flow 来检索数据。此代码位于viewmodel类中。

fun createRepo(data: List<String>, repository: RepositoryData): Flow<PagingData<UnlimitData>> {
    return repository.getStreamData(data).cachedIn(viewModelScope)
}
Run Code Online (Sandbox Code Playgroud)

我正在传递来自服务器的列表。getStreamData函数返回带有 int 和 string 数据的项目。我的数据类

data class UnlimitData(val id: Int, val name: String)
Run Code Online (Sandbox Code Playgroud)

createRepo正在调用我的活动类以在 Adpater 中发送数据。

lifecycleScope.launch {
        viewModel.createRepo(serverData,repository).collectLatest …
Run Code Online (Sandbox Code Playgroud)

android kotlin nestedrecyclerview android-paging-library android-paging-3

5
推荐指数
1
解决办法
3152
查看次数

如何在 Android Kotlin 的列表中存储 24 小时格式

嘿,我想返回 24 小时时间范围的时间对象列表。这意味着我需要一个逻辑来获取从 00.00 到 23.00 的列表中的小时数。在列表中 [ 00.00 , 01.00 , 02.00 ,..... 23.00 ] 。如果我搜索特定的索引,例如

println(timeList[3])
Run Code Online (Sandbox Code Playgroud)

它会回来

03.00.
Run Code Online (Sandbox Code Playgroud)

如何通过Calendar对象或任何其他类实现此逻辑。有没有人知道如何获得这种类型的列表。

java android calendar date kotlin

3
推荐指数
1
解决办法
61
查看次数