android recyclerview下拉刷新时为什么会清空上一次的列表然后再显示新的数据
1个回答
2017-03-12
展开全部
使用官方的刷新控件SwipeRefreshLayout来实现下拉刷新,当RecyclerView滑到底部实现下拉加载(进度条效果用RecyclerView加载一个布局实现)
喜欢Android RecyclerView实现下拉刷新和上拉加载更多的网友,不妨看看下面这篇文章:
[js事件冒泡与事件捕获详解]/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent"> <android/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent"> <TextView android:id="@+id/tv_item_footer_load_more" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_margin="16dp" android:gravity="center" android:text="上拉加载更多" /> <ProgressBar android:id="@+id/pb_item_footer_loading" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_margin="16dp"android:visibility="gone"/></RelativeLayout>适配器
public class RecyclerAdapter extends RecyclerViewIdNameLoadMore; } } /** * 获取数据集加上一个footer的数量 */ @Override public int getItemCount() { return dataList_item_id); tvName = (TextView) itemView_item_name); } } /** * footer的ViewHolder */ public static class FooterViewHolder extends ViewHolder { private TextView tvLoadMore; private ProgressBar pbLoading; public FooterViewHolder(View itemView) { super(itemView); tvLoadMore = (TextView) itemView_item_footer_load_more); pbLoading = (ProgressBar) itemView.findViewById(R.id.pb_item_footer_loading); } } /** * 显示正在加载的进度条,滑动到底部时,调用该方法,上拉就显示进度条,隐藏"上拉加载更多" */ public void showLoading() { if (pbLoading != null && tvLoadMore != null) { pbLoading.setVisibility(View.VISIBLE); tvLoadMore.setVisibility(View.GONE); } } /** * 显示上拉加载的文字,当数据加载完毕,调用该方法,隐藏进度条,显示“上拉加载更多” */ public void showLoadMore() { if (pbLoading != null && tvLoadMore != null) { pbLoading.setVisibility(View.GONE); tvLoadMore.setVisibility(View.VISIBLE); } }}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询