我是Paging Library 3.0的新手,我需要仅从本地数据库进行数据分页。最初,我从数据库中获取了PagingSource<Int, MessageDisplayModel>并将其用作流。
fun getChatMessages(chatWrapper: ChatWrapper): Flow<PagingData<MessageDisplayModel>> {
return Pager(
config = PagingConfig(pageSize = 15,
maxSize = 50,
enablePlaceholders = true)
) {
xmppChatManager.getChatMessages(chatWrapper)
}.flow
}
然后通过 submitData() 方法将 PagingData 传递给适配器。
lifecycleScope.launch {
@OptIn(ExperimentalCoroutinesApi::class)
mViewModel.getChatMessages(chatWrapper).collectLatest {
adapter.submitData(it) }
}
现在,我的关注点是如何从我传递给适配器的PagingData中获取MessageDisplayModel的实际列表?