我正在使用我的应用程序中的Paging库以及Room和Retrofit来翻页api。我目前正在使用像这样的数据类来表示ui状态:
sealed class State : BaseState {
object LoadingInitial : State()
object LoadingNext : State()
data class LoadInitialSuccess(val posts: PagedList<PostEntity>) : State()
data class LoadNextSuccess(val posts: PagedList<PostEntity>) : State()
data class LoadInitialFailure(val throwable: Throwable?) : State()
data class LoadNextFailure(val throwable: Throwable?) : State()
}
该视图订阅ViewModel中的LiveData,然后根据发出的状态更新ui。
我想要的是让ui在状态为LoadingInitial
时显示一些占位符视图,我想我可以创建一个PagedList<PostEntity?>()
并将其提交到PagedListAdapter
并呈现null值作为占位符,但这是不可能的,因为不能直接构造PagedLists。
是否有一种简便的方法来创建PagedList<null>()
或向PagedListAdapter
提交空值而无需在PagedList.Config
中启用占位符?