本文实现一分钟快速集成BGARefreshLayout下拉刷新和上拉加载的功能.

这个是简单单功能的集成方法,详细BGARefreshLayout请到github中的demo,这只是我简化版快速集成.

重要的代码实现如下:

MainActivity类:

public class MainActivity extends AppCompatActivity implements BGARefreshLayout.BGARefreshLayoutDelegate{BGARefreshLayout mRefreshLayout;ListView mLv;List<String> datas;private Handler mHandler = new Handler() {@Overridepublic void handleMessage(Message msg) {super.handleMessage(msg);switch (msg.what) {case 1:Toast.makeText(MainActivity.this, "下拉刷新完毕!", Toast.LENGTH_SHORT).show();mRefreshLayout.endRefreshing();break;default:Toast.makeText(MainActivity.this, "加载更多完毕!", Toast.LENGTH_SHORT).show();datas.add("添加数据");mRefreshLayout.endLoadingMore();break;}}};@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);mRefreshLayout = (BGARefreshLayout) findViewById(R.id.refresh_layout);mLv = (ListView) findViewById(R.id.lv);mAdddatas();//自定义数据initBGARefreshLayout();}public void mAdddatas(){datas = new ArrayList<>();for (int i = 'A'; i < 'z'; i++) {datas.add("使用的假数据:---->" + (char) i);}mLv.setAdapter(new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, datas));}public void initBGARefreshLayout(){// 为BGARefreshLayout设置代理mRefreshLayout.setDelegate(this);// 设置下拉刷新和上拉加载更多的风格     参数1:应用程序上下文,参数2:是否具有上拉加载更多功能BGANormalRefreshViewHolder refreshViewHolder = new BGANormalRefreshViewHolder(this, true);refreshViewHolder.setPullDownRefreshText("往下拉!");refreshViewHolder.setRefreshingText("正在刷!");refreshViewHolder.setReleaseRefreshText("放开我!");// 为了增加下拉刷新头部和加载更多的通用性,提供了以下可选配置选项  -------------START// 设置正在加载更多时不显示加载更多控件// mRefreshLayout.setIsShowLoadingMoreView(false);// 设置正在加载更多时的文本refreshViewHolder.setLoadingMoreText("数量变多");// 设置整个加载更多控件的背景颜色资源id//     refreshViewHolder.setLoadMoreBackgroundColorRes(R.color.colorPrimary);// 设置整个加载更多控件的背景drawable资源id//refreshViewHolder.setLoadMoreBackgroundDrawableRes(loadMoreBackgroundDrawableRes);// 设置下拉刷新控件的背景颜色资源id//  refreshViewHolder.setRefreshViewBackgroundColorRes(refreshViewBackgroundColorRes);// 设置下拉刷新控件的背景drawable资源id//    refreshViewHolder.setRefreshViewBackgroundDrawableRes(R.mipmap.ic_launcher);// 设置自定义头部视图(也可以不用设置)     参数1:自定义头部视图(例如广告位), 参数2:上拉加载更多是否可用
//        View mheader=getLayoutInflater().inflate(R.layout.header,mRefreshLayout,false);
//        mRefreshLayout.setCustomHeaderView(mheader,true);// 可选配置  -------------END// 设置下拉刷新和上拉加载更多的风格mRefreshLayout.setRefreshViewHolder(refreshViewHolder);}@Overridepublic void onBGARefreshLayoutBeginRefreshing(BGARefreshLayout refreshLayout) {mHandler.sendEmptyMessageDelayed(1, 3000);}@Overridepublic boolean onBGARefreshLayoutBeginLoadingMore(BGARefreshLayout refreshLayout) {mHandler.sendEmptyMessageDelayed(2, 3000);return true;}}

这个是最简单的xml添加点击事件(正规开发不用,看上去很简明)按钮刷新方法:

//    public void bottom1(View view){
//        mRefreshLayout.beginLoadingMore();//按钮点击开始加载
//    }
//    public void bottom2(View view){
//        mRefreshLayout.beginRefreshing();//按钮点击开始刷新
//    }

activity_main.xml类:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayoutxmlns:android="http://schemas.android.com/apk/res/android"xmlns:tools="http://schemas.android.com/tools"android:layout_width="match_parent"android:layout_height="match_parent">
<cn.bingoogolapple.refreshlayout.BGARefreshLayoutandroid:layout_above="@+id/bottomlayout"android:id="@+id/refresh_layout"android:layout_width="match_parent"android:layout_height="match_parent"><ListViewandroid:id="@+id/lv"android:layout_width="match_parent"android:layout_height="0dp"android:layout_weight="1"/>
</cn.bingoogolapple.refreshlayout.BGARefreshLayout><LinearLayoutandroid:id="@+id/bottomlayout"android:layout_alignParentBottom="true"android:layout_width="match_parent"android:orientation="horizontal"android:background="#f0f"android:layout_height="30dp"><TextViewandroid:layout_width="match_parent"android:layout_height="wrap_content"android:text="下面的栏目"/></LinearLayout>
</RelativeLayout>

要实现功能还要依赖library库,可以自己依赖BGA的库.

链接:http://pan.baidu.com/s/1qY2AxPE

快速集成Android实现下拉刷新上拉加载更多相关推荐

  1. uni-app下拉刷新触底加载更多

    首先在pages.json 配置文件中配置    "enablePullDownRefresh": true  需要在哪用加载就配置在路由的style里 两个事件 //下拉刷新 o ...

  2. recyclerview的数据刷新(下拉刷新和自动加载更多)以及添加提示语(例如:“数据已加载完毕”)

    下拉加载更多的核心是SwipeRefreshLayout搭配Recyclerview进行使用.布局为 <android.support.v4.widget.SwipeRefreshLayout ...

  3. Android 自定义 ListView 上下拉动“刷新最新”和“加载更多”歌曲列表

    本文内容 环境 测试数据 项目结构 演示 参考资料 本文演示,上拉刷新最新的歌曲列表,和下拉加载更多的歌曲列表.所谓"刷新最新"和"加载更多"是指日期.演示代码 ...

  4. Android ListView 实现下拉刷新上拉加载

    转载请注明出处:http://blog.csdn.net/allen315410/article/details/39965327 1.简介 无疑,在Android开发中,ListView是使用非常频 ...

  5. android listview下拉刷新动画,android 安卓 listview 支持下拉刷新 上拉加载更多

    [1]重写listViewimport java.text.SimpleDateFormat; import java.util.Date; import com.example.testdddlea ...

  6. Android 下拉刷新上拉载入 多种应用场景 超级大放送(上)

    转载请标明原文地址:http://blog.csdn.net/yalinfendou/article/details/47707017 关于Android下拉刷新上拉载入,网上的Demo太多太多了,这 ...

  7. android 列表上拉加载更多,Android 下拉刷新,上拉加载更多控件–支持ListView,GridView和ScrollView...

    麦洛遇到这样一个需求,实现类似于IOS下拉刷新,上拉加载更多的控件.麦洛google,baidu了一番,网上有不少实现,比较常见的是国外牛人的实现,不过国外的实现基本上都是扩展于ListView,所以 ...

  8. Android 下拉刷新上拉加载可以左右滑动

    下面是下拉刷新上拉加载可以左右滑动的实例,下面是效果图: GitHub 下载地址:https://github.com/wuqingsen/MySlidingNested CSDN 下载地址:http ...

  9. Android自定义控件实战——实现仿IOS下拉刷新上拉加载 PullToRefreshLayout

    下拉刷新控件,网上有很多版本,有自定义Layout布局的,也有封装控件的,各种实现方式的都有.但是很少有人告诉你具体如何实现的,今天我们就来一步步实现自己封装的 PullToRefreshLayout ...

  10. Android 下拉刷新上拉加载 多种应用场景 超级大放送(上)

    转载请标明原文地址:http://blog.csdn.net/yalinfendou/article/details/47707017 关于Android下拉刷新上拉加载,网上的Demo太多太多了,这 ...

最新文章

  1. Java基于Swing和Netty仿QQ界面聊天小项目
  2. Deploying Windows Mobile 6 with Exchange Server 2007 白皮书
  3. 服务器端与客户端TCP连接入门(三:多线程)
  4. 【摄影测量原理】第三章:双像立体测图
  5. java弹弹球实验报告_Java弹球游戏实验报告—chen
  6. [opencv] 图像线性混合
  7. oracle实例包括哪几部分,数据库的实例组成部分及作用是什么?一个oracle数据库可以有多个实例吗?...
  8. 最近做的几道笔试题,很有意思
  9. 尚学堂的J2EE教程免费下载(非常经典的JAVA教程)
  10. 分页显示java_java分页实现 怎样用java实现分页显示?
  11. java web音乐播放器_[JavaWeb]网页音乐播放器
  12. 001 Joiner
  13. IDEA连接数据库后在数据表里添加外键的两种方式
  14. 使用python建立一个网站:笔记3 建立自己网站主页
  15. Python爬虫lxml解析实战
  16. Python 爬虫问卷星填写
  17. 电脑游戏计算机哪年发明的,电子计算机发明于哪一年
  18. 加密芯片介绍 加密芯片选择(加密IC) 加密芯片原理
  19. 血氧仪方案功能及使用方法介绍
  20. SQL根据出生日期计算年龄的两种算法

热门文章

  1. 厦门高考成绩查询2021,2021厦门市地区高考成绩排名查询,厦门市高考各高中成绩喜报榜单...
  2. 4.3检测CSRF漏洞
  3. su命令的隐患——用户提权
  4. SyncToy 文件同步工具的定时同步方案(不使用第三方软件)
  5. 17 CoCos Creator-Node Tree 层级管理器
  6. 中级微观经济学:Chap 35 外部效应
  7. 完全卸载Office 2016 for Mac教程
  8. ps 转html node,Node.js模拟发起http请求从异步转同步的5种方法
  9. 洗衣机测试点 思维导图
  10. 动态IP和静态IP有什么区别?