下拉刷新之 swipeRefreshLayout

原创 2015年11月18日 22:45:06

基本原理

占坑待填

注意事项

  1. SwipeRefreshLayout 只能有一个直接子View,可能是一个ListView或一个Layout或其他需要刷新的组件。见下使用记录一
  2. setOnRefreshListener 用于监听刷新的动作。SwipeRefreshLayout 下拉,就会有刷新的效果出来,触发该监听。
  3. 如果需要一个刷新的动画,setRefreshing(true), 停: setRefreshing(false)
  4. 如果要禁用刷新动画和手势响应,ssetEnable(false), 恢复setEnable(true)
  5. SwipeRefreshLayout进度条在要刷新组件(SwipeRefreshLayout 只有一个子view,因此也在SwipeRefreshLayout顶部)的顶部

如下图两个箭头所示,SwipeRefreshLayout。当然基本都在第一个item的位置,.另外手指向下滑动时,被滚动组件并不会随之向下滑动。这一点我个人很不习惯。

Alt text

  1. SwipeRefreshLayout会强制填充整个父容器,对其设置layout_height 和 layout_width无效,如果要在当前布局中显示其他非要被刷新的组件,则需要给SwipeRefreshLayout外套一个父容器。亦或我们在adapterView内使用addHeadView来添加一个头。
  2. 还有一些设置屏幕下拉触发下拉刷新距离、圆圈背景、圆圈大小。都是可以的设置,参考android 文档
  3. 默认是不带有上拉加载的动能,后面将会完善这个功能。

使用记录

  1. 正如下方代码所示,SwipeRefreshLayout 中多添加了一个TextView,结果页面上只有一个TextView没有显示listview,
 <android.support.v4.widget.SwipeRefreshLayout
        android:id="@+id/swipe_refresh_layout"
        android:layout_width="match_parent"
        android:layout_height="wrap_content">
        <TextView
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:text="textview"
            android:textSize="15sp"/>
        <ListView
            android:id="@+id/lv_swipe_volley"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            >
        </ListView>
    </android.support.v4.widget.SwipeRefreshLayout>

控件完善

修改源码实现常见的下拉箭头那种下拉效果

Android修改v4的SwipeRefreshLayout源码实现自定义下拉效果

实现上拉加载功能(分页)

ListView上拉加载更多模拟获取分页数据

数据加载优化及刷新的两级缓存

http://www.jcodecraeer.com/a/anzhuokaifa/androidkaifa/2015/0606/3007.html

版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

swipeRefreshLayout+listview下拉刷新

  • 2017年09月29日 20:28
  • 907KB
  • 下载

android实现倒计时,最简单实现RecyclerView倒计时+SwipeRefreshLayout下拉刷新

Android 抢购类倒计时实现, 代码里有注释,实现起来简单。android实现倒计时,最简单实现RecyclerView倒计时+SwipeRefreshLayout下拉刷新...
  • pyfysf
  • pyfysf
  • 2017年05月18日 11:33
  • 1350

使用SwipeRefreshLayout和RecyclerView实现仿“简书”下拉刷新和上拉加载更多

一、概述 我们公司目前开发的所有Android APP都是遵循iOS风格设计的,这并不是一个好现象。我决定将Android 5.x控件引入最近开发的项目中,使用RecyclerView取代以往使用的L...

Android之SwipeRefreshLayout下拉刷新组件

  • 2017年02月18日 10:06
  • 24.98MB
  • 下载

Android API 19以上版本自带的下拉刷新控件SwipeRefreshLayout的使用

在 Android SDK 19.1 以上版本中,支持一个新的控件 SwipeRefreshLayout 下拉刷新的布局,继承自 ViewGroup ,在 support  v4 兼容包下。下面来看一...

谷歌原生下拉刷新SwipeRefreshLayout

  • 2016年01月13日 11:45
  • 2.57MB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:下拉刷新之 swipeRefreshLayout
举报原因:
原因补充:

(最多只允许输入30个字)