一.recyclerView控件 布局里面放上 RecyclerView

<android.support.v4.widget.SwipeRefreshLayout
android:id="@+id/swipe_refresh_layout"
android:layout_width="match_parent"
android:layout_height="wrap_content">
<android.support.v7.widget.RecyclerView
android:id="@+id/recycler_view"
android:layout_width="match_parent"
android:layout_height="wrap_content"
></android.support.v7.widget.RecyclerView>
</android.support.v4.widget.SwipeRefreshLayout>

二.获取swipeRefreshLayout

swipeRefreshLayout= (SwipeRefreshLayout) view.findViewById(R.id.swipe_refresh_layout);         //创建swiperefresh_layout下拉刷新的对象

三.初始化swipeRefreshLayout 使用子线程加载list模拟刷新数据

/*** swipeRefreshLayout下拉刷新按钮的控件*/private void initSwipeRefreshLayout(){
swipeRefreshLayout.setColorSchemeResources(R.color.red);                  //设置旋转按钮的颜色
swipeRefreshLayout.setDistanceToTriggerSync(100);                          //下拉刷新的距离
swipeRefreshLayout.setProgressBackgroundColorSchemeColor(getResources().getColor(R.color.white));         //设置背景颜色
swipeRefreshLayout.setSize(SwipeRefreshLayout.LARGE);                       //设置刷新按钮的大小swipeRefreshLayout.setOnRefreshListener(new SwipeRefreshLayout.OnRefreshListener() {              //设置下拉刷新的监听器,要异步处理@Overridepublic void onRefresh() {final Thread thread=new Thread(new Runnable() {@Overridepublic void run() {Message msg=new Message();msg.what=1;RecyclorBean recyclorBean=new RecyclorBean(1,"新添加的物品",new RecyclorItemBean(1,"物品一","http://img4q.duitang.com/uploads/item/201411/20/20141120132318_3eAuc.thumb.700_0.jpeg"),new RecyclorItemBean(2,"物品二","http://heilongjiang.sinaimg.cn/2015/0326/U10061P1274DT20150326104659.jpg"),new RecyclorItemBean(3,"物品三","http://hiphotos.baidu.com/%CC%EC%C9%BD%B6%FE%CF%C0%B5%C4%D0%A1%CE%DD/pic/item/70c553e736d12f2e5b0614d64fc2d5628535682a.jpg"));list.add(0,recyclorBean);handler.sendMessage(msg);}});try {Thread.sleep(3000);thread.start();} catch (InterruptedException e) {e.printStackTrace();}}});}

四.handler异步处理 回到主线程

public static Handler handler=new Handler(){
@Override
public void handleMessage(Message msg) {super.handleMessage(msg);switch (msg.what){case 1:homeCategoryAdapter.notifyItemRangeChanged(0,1);        //更新adapter,更新后的adapter的位置recyclerView.scrollToPosition(0);                       //重新锁定recyclorview的位置swipeRefreshLayout.setRefreshing(false);                 //刷新完了直接关闭}
}
};

学习笔记 Tianmao 篇 SwipeRefreshLayoyt 下拉刷新 控件 使用相关推荐

  1. 仿美团下拉刷新控件(二)

    如果想学习更多进阶知识,可以关注我的微信公众号:Android小菜. 也可以直接扫描二维码关注: 转载本专栏文章,请注明出处,尊重原创 .文章博客地址:道龙的博客 本篇是实现仿美团下拉刷新控件的第二篇 ...

  2. android多个下拉控件,Android实现支持所有View的通用的下拉刷新控件

    下拉刷新对于一个app来说是必不可少的一个功能,在早期大多数使用的是chrisbanes的PullToRefresh,或是修改自该框架的其他库.而到现在已经有了更多的选择,github上还是有很多体验 ...

  3. Android SwipeRefreshLayout下拉刷新控件源码简单分析

    咱们在做Android APP开发的时候经常碰到有下拉刷新和上拉加载跟多的需求,这篇文章咱们先说说下来刷新,咱们就以google的原生的下拉刷新控件SwipeRefreshLayout来看看大概的实现 ...

  4. Android 怎么实现支持所有View的通用的下拉刷新控件

    转载请标明出处: http://blog.csdn.net/u010386612/article/details/51372696 本文出自:[AItsuki的博客] 下拉刷新对于一个app来说是必不 ...

  5. Android自定义控件实战——下拉刷新控件终结者:PullToRefreshLayout

    说到下拉刷新控件,网上版本有很多,很多软件也都有下拉刷新功能.有一个叫XListView的,我看别人用过,没看过是咋实现的,看这名字估计是继承自ListView修改的,不过效果看起来挺丑的,也没什么扩 ...

  6. Android仿苹果版QQ下拉刷新实现(一) ——打造简单平滑的通用下拉刷新控件

    前言: 因为公司人员变动原因,导致了博主四个月没有动安卓,一直在做IOS开发,如今接近年前,终于可以花一定的时间放在安卓上了.好了,废话不多说,今天我们要带来的效果是苹果版本的QQ下拉刷新.首先看一下 ...

  7. android google 下拉刷新 csdn,android SwipeRefreshLayout google官方下拉刷新控件

    下拉刷新功能之前一直使用的是XlistView很方便我前面的博客有介绍 SwipeRefreshLayout是google官方推出的下拉刷新控件使用方法也比较简单 今天就来使用下SwipeRefres ...

  8. Android SwipeRefreshLayout 官方下拉刷新控件介绍

    转载请标明出处:http://blog.csdn.net/lmj623565791/article/details/24521483 下面App基本都有下拉刷新的功能,以前基本都使用XListView ...

  9. android 下拉刷新 组件,android系统自带下拉刷新控件的实现

    android系统自带的下拉刷新控件SwipeRefreshLayout位于android.support.v4.widget包下,实现步骤如下: 1.在布局文件中添加该控件,该控件一般作为父控件,而 ...

  10. pb自定义控件 事件_Android WebView与下拉刷新控件滑动冲突的解决方法

    使用WebView时一般会在外层使用下拉刷新控件如(SwipeRefreshLayout).但是测试时会发现网页无法上拉,往上滑动就会触发下拉刷新控件的refresh事件.所以这里记录一下解决该问题的 ...

最新文章

  1. servlet实现http通信基础
  2. RecyclerView多布局的简单使用
  3. 给力!使用MacPilot解锁macOS 1200多个隐藏功能!(支持M1处理器mac)
  4. 十年码农的肺腑之言:“技术不是万能”
  5. 新书《Ext JS 4.2 实战》终于出炉了
  6. Linux配置Anaconda3环境变量的问题
  7. Mysql 分组聚合实现 over partition by 功能
  8. ARTS打卡计划第一周-Tips-ControllerAdvice的使用
  9. 5条线程轮流打印1~100
  10. Android Framework实战视频系列
  11. 在Ubuntu20.04(Linux Mint)中同步通达信软件的自选股和画线数据
  12. EM310指令集及使用
  13. 结合实际案例讲解系统分析方法
  14. 临近秋招实习,科普一下“内推”的利优势
  15. 国产化服务器兼容系统,必须兼容中国芯,国产操作系统再迎来发展机遇?
  16. 数据的写出(FileWriter)
  17. MacBook Pro(13 英寸,2011 年末)A1278 安装Winows11无声音问题解决(WIN10和WIN11同样的解决方法)
  18. shell习题-27
  19. 计算机系微电子专业就业前景,2018微电子技术专业就业前景和就业方向分析
  20. 我也来分享一个魔兽显血改键工具

热门文章

  1. ftp上传下载工具,6款最值得推荐的Windows端ftp上传下载工具
  2. 笔记本拔插电源黑屏问题
  3. java 单击按钮改变背景颜色_java点击按钮换背景颜色?
  4. 非常实用的一键开关机电路
  5. mv单位是什么意思_mv单位(mv是什么意思单位)
  6. C#更新word目录
  7. mysql多表条件查询_mysql 多表 多个条件 查询
  8. Python-实现(整蛊)消息批量发送
  9. 【APP 测试】绕过华为手机打开 USB 调试需要先登录华为账号问题
  10. linux查看cpu架构命令,linux查看cpu型号命令