1.先写布局文件

  1. <android.support.v4.widget.SwipeRefreshLayout
  2. android:id="@+id/refresh"
  3. android:layout_width="match_parent"
  4. android:layout_height="wrap_content">
  5.  
  6. <android.support.v7.widget.RecyclerView
  7. android:id="@+id/my_recycler_view"
  8. android:scrollbars="vertical"
  9. android:layout_width="match_parent"
  10. android:layout_height="match_parent"/>
  11.  
  12. </android.support.v4.widget.SwipeRefreshLayout>

2.mainactivity

  1. public class MainActivity extends AppCompatActivity {
  2. private OkHttpHelper httpHelper =OkHttpHelper.getInstance();
  3. private SwipeRefreshLayout swipeRefreshLayout;
  4. @ViewInject(R.id.tv)
  5. private TextView tv;
  6.  
  7. private RecyclerView mRecyclerView;
  8. private ArrayList<String> mDatas=new ArrayList<>();
  9. private MyAdapter myAdapter;
  10.  
  11. @Override
  12. protected void onCreate(Bundle savedInstanceState) {
  13. super.onCreate(savedInstanceState);
  14. setContentView(R.layout.activity_main);
  15. mRecyclerView = findViewById(R.id.my_recycler_view);
  16. initDatas();
  17. myAdapter =new MyAdapter(mDatas);
  18. mRecyclerView.setAdapter(myAdapter);
  19. mRecyclerView.setLayoutManager(new LinearLayoutManager(this));
  20. //mRecyclerView.setLayoutManager(new GridLayoutManager(this,4));
  21. // mRecyclerView.setLayoutManager(new StaggeredGridLayoutManager(4,StaggeredGridLayoutManager.HORIZONTAL));
  22. //配置分割线
  23. mRecyclerView.addItemDecoration(new DividerItemDecoration(this,DividerItemDecoration.VERTICAL_LIST));
  24. //事件监听
  25.  
  26. int size =mDatas.size();
  27. //添加数据到头部
  28. myAdapter.addData(size,"adddddddddd");
  29.  
  30. //删除数据
  31. myAdapter.removeData();
  32.  
  33. swipeRefreshLayout = findViewById(R.id.refresh);
  34. initRefreshLayout();
  35. }
  36.  
  37. private void initRefreshLayout(){
  38. //转的圈圈的颜色
  39. swipeRefreshLayout.setColorSchemeResources(R.color.colorPrimary);
  40.  
  41. swipeRefreshLayout.setOnRefreshListener(new SwipeRefreshLayout.OnRefreshListener() {
  42. @Override
  43. public void onRefresh() {
  44. Log.d(TAG, "onRefresh: "+swipeRefreshLayout.isRefreshing());
  45. new Handler().postDelayed(new Runnable() {
  46. @Override
  47. public void run() {
  48. for(int i=;i<=;i++){
  49. myAdapter.addData(i,"new"+i);
  50. }
  51. myAdapter.notifyItemRangeChanged(,);
  52.  
  53. mRecyclerView.scrollToPosition();
  54. //刷新完成,必须调用,否则会一直是圈圈转转的情况
  55. swipeRefreshLayout.setRefreshing(false);
  56. }
  57. },);
  58. }
  59. });
  60. }
  61.  
  62. private static final String TAG = "MainActivity";
  63. private void initDatas(){
  64. mDatas.add("aa");
  65. mDatas.add("cv");
  66. mDatas.add("cv1");
  67. mDatas.add("cv112");
  68. mDatas.add("cv112");
  69. mDatas.add("cv112");
  70. mDatas.add("cv112");
  71. mDatas.add("cv112");
  72. mDatas.add("cv112");
  73. mDatas.add("cv112");
  74. mDatas.add("cv112");
  75. mDatas.add("cv112");
  76. mDatas.add("cv112");
  77. mDatas.add("cv112");
  78. }
  79.  
  80. }

安卓下拉刷新空间SwipeRefreshLayout的基本使用的更多相关文章

  1. Google自己的下拉刷新组件SwipeRefreshLayout

    SwipeRefreshLayout SwipeRefreshLayout字面意思就是下拉刷新的布局,继承自ViewGroup,在support v4兼容包下,但必须把你的support librar ...

  2. android之官方下拉刷新组件SwipeRefreshLayout

    1.setOnRefreshListener(SwipeRefreshLayout.OnRefreshListener listener):设置手势滑动监听器. 2.setProgressBackgr ...

  3. Android内置下拉刷新组件SwipeRefreshLayout

    也许下拉刷新之前,你可能会使用一些第三方的开源库,例如PullToRefresh, ActionBar-PullToRefresh等待,但现在有的正式组成部分---SwipeRefreshLayout ...

  4. android——官方下拉刷新组件SwipeRefreshLayout(转)

    一.问题描述 在android开发中,使用最多的数据刷新方式就是下拉刷新了,而完成此功能我们使用最多的就是第三方的开源库PullToRefresh.现如今,google也忍不住推出了自己的下拉组件Sw ...

  5. Google官方下拉刷新组件---SwipeRefreshLayout

    今天在Google+上看到了SwipeRefreshLayout这个名词,遂搜索了下,发现竟然是刚刚google更新sdk新增加的一个widget,于是赶紧抢先体验学习下. SwipeRefreshL ...

  6. 安卓---下拉刷新---上拉加载---解决导入library等自生成库文件失败的问题

    本文的下拉刷新以及上拉加载都是用PullToRefresh实现的,关于PullToRefresh的介绍以及源码,网上可以找到很多,本人在此不再赘述. PullToRefresh是一套实现非常好的下拉刷 ...

  7. Android控件(一)下拉刷新:SwipeRefreshLayout

    须要注意的是SwipeRefreshLayout以下仅仅能够有一个直接子节点. 布局文件例如以下. <FrameLayout xmlns:android="http://schemas ...

  8. SwipeRefreshLayout + RecyclerView 实现 上拉刷新 和 下拉刷新

    下拉刷新和上拉刷新都用SwipeRefreshLayout 自带的进度条 布局 <?xml version="1.0" encoding="utf-8"? ...

  9. google推出的SwipeRefreshLayout下拉刷新用法

    使用如下: 1.先下载android-support-v4.jar最新版本,之前的版本是没有SwipeRefreshLayout下拉刷新控件的,如果已经更新,此步骤可省略. 2.在xml文件中引用an ...

随机推荐

  1. 基于jQuery的2048小游戏设计(网页版)

    上周模仿一个2048小游戏,总结一下自己在编写代码的时候遇到的一些坑. 游戏规则:省略,我想大部分人都玩过,不写了 源码地址:https://github.com/xinhua6/2048game.g ...

  2. mysql学习第三天练习(多表连接)

    -- 多表连接 -- 写一条查询语句,查询员工姓名.部门名称.工作地点 select ename,dname,loc from emp,dept where emp.deptno = dept.dep ...

  3. Git的使用规范(二)

    今天,我们来介绍一下git的一些命令行,来帮我们后面可以面对一些情况的时候,我们可以有一些解决的方法 1.git查看历史记录最全的命令行 git log --pretty=raw 2.对于一下的几个情 ...

  4. Java集合类面试题

    java.util包中包含了一系列重要的集合类,而对于集合类,主要需要掌握的就是它的内部结构,以及遍历集合的迭代模式. 1.Java集合框架是什么?说出一些集合框架的优点? 每种编程语言中都有集合,最 ...

  5. thrift 调取 python php go 客户端代码

    golang package main import ( "fmt" "git.apache.org/thrift.git/lib/go/thrift" &qu ...

  6. c++ combination by next_permutation

    #include <iostream> #include <algorithm> #include <vector> int main() { int n, r; ...

  7. idea在Maven Projects中显示灰色的解决办法

    问题描述: 在使用idea的过程中,遇到其中一个maven模块变成灰色,如下所示: 问题解决: 造成这个的原因可能是忽略了maven模块. 可以尝试如下解决方法:在idea中进入Settings–&g ...

  8. Sublime Text 3配置 Python3 开发环境

    来自 https://www.cnblogs.com/zhangqinwei/p/6886600.html Sublime Text作为一款支持多种编程语言的文本编辑神器,深受广大开发者的喜爱.通过简 ...

  9. POJ 2168 Joke with Turtles(DP)

    Description There is a famous joke-riddle for children: Three turtles are crawling along a road. One ...

  10. css3弹性盒子模型之box-flex

    css3弹性盒子模型之box-flex 浏览器支持 目前没有浏览器支持 box-flex 属性. Firefox 支持替代的 -moz-box-flex 属性. Safari.Opera 以及 Chr ...