RecycylerView 实现下拉刷新,上拉加载(简单版)
2018-04-03 14:31
267 查看
一、下拉刷新
Xml文件中添加SwipeReFreshLayout<android.support.v4.widget.SwipeRefreshLayout
android:id="@+id/refresh_layout"
android:layout_width="match_parent"
android:layout_height="wrap_content">
<android.support.v7.widget.RecyclerView
android:id="@+id/news_list"
android:layout_width="match_parent"
android:layout_height="wrap_content">
</android.support.v7.widget.RecyclerView>
</android.support.v4.widget.SwipeRefreshLayout>MainActivity中添加setOnReFreshLayoutListener就可以了mRefreshLayout = (SwipeRefreshLayout) findViewById(R.id.refresh_layout);
mRefreshLayout.setOnRefreshListener(new SwipeRefreshLayout.OnRefreshListener() {
@Override
public void onRefresh() {
Toast.makeText(MainActivity.this,"下拉刷新成功",Toast.LENGTH_SHORT).show();
mRefreshLayout.setRefreshing(false);
}
});二、上拉加载
给recyclerview添加OnscrollListener
recyclerview的状态有:
空闲状态: SCROLL_STATE_IDLE
滑动状态: SCROLL_STATE_TOUCH_SCROLL
惯性滑动状态: SCROLL_STATE_FLING
private RecyclerView recyclerView;
recyclerView.addOnScrollListener(new RecyclerView.OnScrollListener() {
@Override
public void onScrollStateChanged(RecyclerView recyclerView, int newState) {
super.onScrollStateChanged(recyclerView, newState);
if(newState == RecyclerView.SCROLL_STATE_IDLE){
int lastVisiblePosition = linearLayoutManager.findLastVisibleItemPosition();
if(lastVisiblePosition >= linearLayoutManager.getItemCount() - 1){
Toast.makeText(MainActivity.this,"上拉加载成功",Toast.LENGTH_SHORT).show();
}
}
}
});
Xml文件中添加SwipeReFreshLayout<android.support.v4.widget.SwipeRefreshLayout
android:id="@+id/refresh_layout"
android:layout_width="match_parent"
android:layout_height="wrap_content">
<android.support.v7.widget.RecyclerView
android:id="@+id/news_list"
android:layout_width="match_parent"
android:layout_height="wrap_content">
</android.support.v7.widget.RecyclerView>
</android.support.v4.widget.SwipeRefreshLayout>MainActivity中添加setOnReFreshLayoutListener就可以了mRefreshLayout = (SwipeRefreshLayout) findViewById(R.id.refresh_layout);
mRefreshLayout.setOnRefreshListener(new SwipeRefreshLayout.OnRefreshListener() {
@Override
public void onRefresh() {
Toast.makeText(MainActivity.this,"下拉刷新成功",Toast.LENGTH_SHORT).show();
mRefreshLayout.setRefreshing(false);
}
});二、上拉加载
给recyclerview添加OnscrollListener
recyclerview的状态有:
空闲状态: SCROLL_STATE_IDLE
滑动状态: SCROLL_STATE_TOUCH_SCROLL
惯性滑动状态: SCROLL_STATE_FLING
private RecyclerView recyclerView;
recyclerView.addOnScrollListener(new RecyclerView.OnScrollListener() {
@Override
public void onScrollStateChanged(RecyclerView recyclerView, int newState) {
super.onScrollStateChanged(recyclerView, newState);
if(newState == RecyclerView.SCROLL_STATE_IDLE){
int lastVisiblePosition = linearLayoutManager.findLastVisibleItemPosition();
if(lastVisiblePosition >= linearLayoutManager.getItemCount() - 1){
Toast.makeText(MainActivity.this,"上拉加载成功",Toast.LENGTH_SHORT).show();
}
}
}
});
相关文章推荐
- 采用SwipeFreshLayout+Recyclerview实现下拉刷新和上拉加载更多以及CoordinatorLayout的引入
- pulltorefresh+recycleview 实现的瀑布流(带下拉刷新,上拉加载更多)
- 自己封装的工具类,使用原生SwipeRefreshLayout+RecycleView实现下拉刷新和加载更多
- XRecyclerView的多条目请求数据,可以实现上拉加载下拉刷新
- 通过ViewGroup实现下拉刷新和上拉加载,2018/2/12 06
- Android控件PullRefreshViewGroup实现下拉刷新和上拉加载
- RecyclerView配合SwipeRefreshLayout实现下拉刷新以及实现上拉加载更多
- RecyclerView的简单使用,实现下拉刷新、上拉加载
- SwipeRefreshLayout +RecycleView实现上拉加载更多和下拉刷新
- 用RecyclerView实现新闻列表页,包括头部的图片轮播,两种Item显示方式,下拉刷新和上拉加载以及限制列表的加载条目数
- Android 5.X新特性之为RecyclerView添加下拉刷新和上拉加载及SwipeRefreshLayout实现原理
- XRecyclerView:实现下拉刷新、滚动到底部加载更多以及添加header功能的RecyclerView
- 详解自主实现RecyclerView下拉刷新、上拉加载、Header、Footer以及swiperefreshlayout的部分讲解
- Android实现RecyclerView的下拉刷新和上拉加载更多
- RecyclerView实例-实现可下拉刷新上拉加载更多并可切换线性流和瀑布流模式(1)
- SwipeRefreshLayout + RecyclerView实现上拉加载和下拉刷新
- SwipeRefreshLayout + RecyclerView 实现上拉加载下拉刷新
- 实现TableView的上拉加载和下拉刷新
- Android之RecyclerView轻松实现下拉刷新和加载更多
- Android RecyclerView实现下拉刷新和上拉加载