override fun loadInitial(params: LoadInitialParams<String>, callback: LoadInitialCallback<String, Item>) {
updateState(State.LOADING)
compositeDisposable.add(
networkService.getPlaylistVideos(Constants.PLAYLIST_ID
,""
,Constants.API_KEY)
.subscribe( { response ->
updateState(State.DONE)
callback.onResult(response.items, response.prevPageToken, response.nextPageToken)
},
{
updateState(State.ERROR)
setRetry(Action { loadInitial(params,callback) })
}
)
)
}
override fun loadAfter(params: LoadParams<String>, callback: LoadCallback<String, Item>) {
updateState(State.LOADING)
compositeDisposable.add(
networkService.getPlaylistVideos(Constants.PLAYLIST_ID, params.key,Constants.API_KEY)
.subscribe(
{ response ->
updateState(State.DONE)
callback.onResult(response.items
,response.nextPageToken)
}, {
updateState(State.ERROR)
setRetry(Action { loadAfter(params, callback) })
})
)
}
override fun loadBefore(params: LoadParams<String>, callback: LoadCallback<String, Item>) {
updateState(State.LOADING)
compositeDisposable.add(
networkService.getPlaylistVideos(Constants.PLAYLIST_ID,params.key,Constants.API_KEY)
.subscribe({ response ->
updateState(State.DONE)
callback.onResult(response.items
,response.prevPageToken)
},{
updateState(State.ERROR)
setRetry(Action { loadBefore(params, callback) })
})
)
}
有什么方法可以获得页面令牌吗?如何从活动/viewmodel中的PageKeyedDataSource获取当前加载的页标记。