我想在我的应用程序中使用分页库,我已经看到了多个示例,它们都使用具有 MVVM 架构的视图模式组件,但是我的应用程序的大部分部分都是 MVP 架构,我不想使用 MVVM,所以是有什么方法可以使用具有 MVP 架构的分页库来实现分页?
问问题
1212 次
1 回答
1
是的你可以。您可以启动数据源工厂并在 Presenter 中实现方法,例如
private void initData(String id) {
executor = Executors.newFixedThreadPool(5);
factory = new EvaluationDataSourceFactory(compositeDisposable, api, id);
networkState = Transformations.switchMap(factory.getDataSource(), source -> {
Timber.d("network status get");
return source.getNetworkState();
}
);
PagedList.Config pagedListConfig =
(new PagedList.Config.Builder())
.setEnablePlaceholders(false)
.setInitialLoadSizeHint(5)
.setPrefetchDistance(5)
.setPageSize(5).build();
error = Transformations.switchMap(factory.getDataSource(), source -> {
return source.getError();
});
assessments = (new LivePagedListBuilder(factory, pagedListConfig)).setFetchExecutor(executor).build();
}
public void getAssessments(String id) {
initData(id);
}
然后,您可以从您的活动或片段中调用演示者方法,例如
presenter.getAssessments(id);
它对我有用。
于 2019-02-20T16:32:27.050 回答