我有定义loadInitial
和的 PositionalDataSource 的实现loadRange
。分页工作正常,但是在某些边界条件下(可能与在退出屏幕时正在加载下一页有关)应用程序崩溃时出现androidx.paging.ContiguousPagedList$1.onPageError (ContiguousPagedList.java:153)
. 但是每个https://developer.android.com/reference/android/arch/paging/PositionalDataSource我的来源不是连续的?
在 ContiguousPagedList 的 onPageError 下发生崩溃,与 "todo" 一致:
public void onPageError(@PageResult.ResultType int resultType,
@NonNull Throwable error, boolean retryable) {
LoadState errorState = retryable ? LoadState.RETRYABLE_ERROR : LoadState.ERROR;
if (resultType == PageResult.PREPEND) {
mLoadStateManager.setState(LoadType.START, errorState, error);
} else if (resultType == PageResult.APPEND) {
mLoadStateManager.setState(LoadType.END, errorState, error);
} else {
// TODO: pass init signal through to *previous* list
throw new IllegalStateException("TODO");
}
}
我的配置没有使用占位符,也没有将总数传递给onResult
of LoadInitialCallback
。分页库的版本是 2.1.1