问题描述
请教一下大家对于列表数据的请求,在同一个接口中进行下拉刷新和上拉加载的请求,那么在获得请求结果的时候有什么比较合适的方式来处理数据的?
我现在的做法是将数据传入同一函数,然后在函数中对本次请求进行判断,如果是刷新则清空数据容器,然后添加数据,如果不是刷新则直接添加,但是感觉处理起来代码不好看,每次处理也都要做重复操作,没有什么抽取。请教一下碰到这种情况有什么比较漂亮的解决方式吗?
问题解答
回答1:/** * 请求数据 * @param page 页码 * @param status 状态 是刷新 还是加载更多 */ private void loadData(int page,int status){HttpUtil.with(..) .url(..) .param(..) .excute(new Callback(){ void onSuccess(List<bean> result){if(status == REFRESH_STATUS){//刷新状态 datas.clear();}datas.addALL(result);adapter.notifyDataSetChanged(); }}); }回答2:
接口般会需要page参数,page=0一般都是下拉刷新吧