Eri*_*via 5 paging pagination android kotlin kotlin-flow
我有以下代码:
\n val history: Flow<PagingData<Any>> = Pager(PagingConfig(pageSize = 10)) {\n PaginationBaseDataSource(apiService)\n}.flow\n .cachedIn(viewModelScope)\nRun Code Online (Sandbox Code Playgroud)\n当前正在显示没有任何附加参数的项目列表。这工作正常...但现在我希望根据用户可以在前端更改的某些参数来查询此列表,让\xc2\xb4s 说我希望添加参数 3 作为查询。
\n val history: Flow<PagingData<Any>> = Pager(PagingConfig(pageSize = 10)) {\n PaginationBaseDataSource(apiService, 3)\n}.flow\n .cachedIn(viewModelScope)\nRun Code Online (Sandbox Code Playgroud)\n问题是...我怎样才能动态设置这个查询参数?让\xc2\xb4s 说用户而不是3,使用6,然后是9。我怎样才能实现这一点?
\n非常感谢
\n只要您的参数之一发生变化,您就需要发出新的 PagingData。实现此目的的流程式方法可能如下所示:
val queryFlow = MutableStateFlow(value = 3)
val pagingDataFlow = queryFlow.flatMapLatest { query ->
Pager(...) { MyPagingSource(query) }.flow.cachedIn(viewModelScope)
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1344 次 |
| 最近记录: |