使用RecyclerView和SwipeRefreshLayout 配合在下拉刷新后在快速上拉加载更多。会出现下标越界的情况
2017-11-17 17:31
183 查看
分析原理:这种情况是因为在调用率刷新的时候把当前list清空,留着装最新的数据,但是在还没有最新数据的时候,就会出现下标越界。
@Override
public void onRefresh() {
//list.clear();
pageindex = 1;
indexToast=0;
getUrlData("api","getappointlist",loginid,pageindex);
}
上面的list.clear(); 应该放在下面这里调用就会解决这个问题:
@Override
public void onSuccess(String t) {
super.onSuccess(t);
if (flag){
finalDialog.dismiss();
}
swipe.setRefreshing(false);
if (pageindex==1){
//强调刷新的时候清空list
list.clear();
}
try {
JSONObject jsonObject = new JSONObject(t);
int errno = jsonObject.getInt("errno");
if (errno == 0) {
array = jsonObject.getJSONArray("items");
Map map;
for (int i =0;i<array.length();i++){
JSONObject obj = (JSONObject) array.get(i);
map = new HashMap();
map.put("itemname",obj.getString("itemname"));
map.put("starttime",obj.getString("appointdate"));
map.put("status",obj.getString("state"));
map.put("id",obj.getString("id"));
map.put("appointquhao",obj.getString("appointquhao"));
list.add(map);
}
LogUtil.recordLog("数据列表size:"+list.size());
refreshRecyclerView(list);
} else {
String errors = jsonObject.getJSONArray("errors").getString(0);
initToast(errors);
}
} catch (JSONException e) {
e.printStackTrace();
}
}只有在接口调取成功,清空list在进行刷新。
相关文章推荐
- 使用SwipeRefreshLayout和RecyclerView实现下拉刷新上拉加载更多
- RecyclerView 使用总结(二):RecyclerView的下拉刷新、加载更多
- 使用SwipeRefreshLayout和RecyclerView实现仿“简书”下拉刷新和上拉加载更多
- [置顶] Xamarin android 使用RecyclerView结合SwipeRefreshLayout下拉刷新滑到底部加载更多
- 使用SwipeRefreshLayout和RecyclerView实现仿“简书”下拉刷新和上拉加载更多
- 使用SwipeRefreshLayout和RecyclerView实现仿“简书”下拉刷新和上拉加载更多
- SwipeRefreshLayout配合RecyclerView实现上拉加载更多下拉刷新
- 使用SwipeRefreshLayout和RecyclerView实现仿“简书”下拉刷新和上拉加载更多
- SwipeRefreshLayout配合RecyclerView实现下拉刷新和上拉加载更多以及没有数据的显示
- Android使用RecyclerView实现上拉加载更多,下拉刷新,分组显示
- 使用SwipeRefreshLayout和RecyclerView实现仿“简书”下拉刷新和上拉加载更多
- RecyclerView配合SwipeRefreshLayout实现下拉刷新以及实现上拉加载更多
- 使用SwipeRefreshLayout和RecyclerView实现下拉刷新上拉加载更多
- 在Android Studio上使用GSON+VOLLEY,秒处理网络数据成集合。感受框架的力量。搭配RecyclerView和SwipeRefreshLayout,实现底端加载更多,下拉刷新。
- 使用SwipeRefreshLayout和RecyclerView实现仿“简书”下拉刷新和上拉加载更多
- SwipeRefreshLayout配合RecyclerView实现下拉刷新和上拉加载更多以及没有数据的显示
- XRecyclerView:实现下拉刷新、滚动到底部加载更多以及添加header功能的RecyclerView
- Android RecyclerView 加载更多数据 及 不同类型itemView的使用
- Android Recycler View Header Footer 下拉刷新,自动加载更多,空view,loading view
- 支持下拉刷新和上划加载更多的自定义RecyclerView(仿XListView效果)