【声明】转载请注明出处。此文出自指尖飞落的博客:http://blog.csdn.net/huntersnail

——尊重作者。知识无价。交流无限!

前言:下拉刷新是Android项目中常常要用到的东西,对于没有经验的开发人员来说。第一次接触确实比較头疼。

网上有非常多可供參考的框架,我用的是GitHub那里下载的一个框架handmark点击打开链接。

这也是我在网上看到大家用得最多的一个框架,当然,非常多大神会不屑一顾,分分钟就自己写出来了。咱不去比那玩意儿,毕竟自己写还须要一点功底的。我想还有非常多是和笔者一样刚入行的。仅供交流。望各大神指教。以下就贴下代码。说一下怎样去用!

1、导库

右键点击项目——>点击Properties——>点击Android——>点击Add加入库——>Ok

2、Activity

package com.example.refreshdemo;import java.util.ArrayList;
import java.util.List;import com.handmark.pulltorefresh.library.PullToRefreshBase;
import com.handmark.pulltorefresh.library.PullToRefreshBase.Mode;
import com.handmark.pulltorefresh.library.PullToRefreshListView;import android.os.AsyncTask;
import android.os.Bundle;
import android.app.Activity;
import android.graphics.Color;
import android.view.Gravity;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.ListView;
import android.widget.TextView;import com.handmark.pulltorefresh.library.PullToRefreshBase.OnRefreshListener2;public class MainActivity extends Activity {private PullToRefreshListView mPtrlv;private List<String> list;private MyAdapter mAdapter;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);mPtrlv=(PullToRefreshListView) findViewById(R.id.ptrlv);//设置模式,BOTH:上拉下拉//DISABLED:取消上拉下拉//PULL_FROM_END:仅仅上拉//PULL_FROM_START:仅仅下拉mPtrlv.setMode(Mode.BOTH);list=new ArrayList<String>();initData();setListener();mAdapter=new MyAdapter();mPtrlv.setAdapter(mAdapter);}/*** 初始化模拟数据*/private void initData() {for (int i = 0; i < 10; i++) {list.add("模拟数据"+i);}}private void setListener() {mPtrlv.setOnRefreshListener(new OnRefreshListener2<ListView>() {/*** 下拉刷新* 假设须要下拉载入上一页,在这种方法onPullDownToRefresh()做处理*/int x=1;@Overridepublic void onPullDownToRefresh(PullToRefreshBase<ListView> refreshView) {list.add(0, "下拉刷新<<<上一页:"+x++);//通知数据改变mAdapter.notifyDataSetChanged();new MyTask().execute();}/*** 上拉载入* 假设须要下拉载入上一页,在这种方法onPullUpToRefresh()做处理*/int y=1;@Overridepublic void onPullUpToRefresh(PullToRefreshBase<ListView> refreshView) {list.add("上拉载入>>>下一页:"+y++);//通知数据改变mAdapter.notifyDataSetChanged();new MyTask().execute();}});}/*** 自己定义适配器* @author Endoon* 2015-7-24 09:23:19*/class MyAdapter extends BaseAdapter{@Overridepublic int getCount() {return list.size();}@Overridepublic Object getItem(int position) {return position;}@Overridepublic long getItemId(int position) {return position;}@Overridepublic View getView(int position, View convertView, ViewGroup parent) {TextView mView=new TextView(getApplicationContext());mView.setText(list.get(position));mView.setTextColor(Color.RED);mView.setGravity(Gravity.CENTER);return mView;}}/*** 异步载入数据* @author Endoon* 2015-7-24 09:23:12*/class MyTask extends AsyncTask<Void, Void, Void>{@Overrideprotected Void doInBackground(Void... params) {return null;}@Overrideprotected void onPostExecute(Void result) {super.onPostExecute(result);//Mark the current Refresh as complete. Will Reset the UI and hide the Refreshing ViewmPtrlv.onRefreshComplete();//刷新UI}};
}

3、Xml文件

<RelativeLayout xmlns: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"tools:context=".MainActivity" ><com.handmark.pulltorefresh.library.PullToRefreshListViewandroid:id="@+id/ptrlv"android:layout_width="fill_parent"android:layout_height="fill_parent"></com.handmark.pulltorefresh.library.PullToRefreshListView></RelativeLayout>

4、效果图

源代码和库下载地址:点击打开链接

O(∩_∩)O哈哈~欢迎各种吐槽、歧视、不吝赐教、交流......

☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆转载请注明出处☞指尖飞落的博客☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆

转载于:https://www.cnblogs.com/jzdwajue/p/7095902.html

PullToRefreshListView下拉刷新与上拉载入相关推荐

  1. Android ListView下拉刷新、上拉载入更多

    找下拉刷新,上拉加载的demo找了好久,踩找到这个相对完美的.所以分享给大家 https://github.com/Maxwin-z/XListView-Android 0. XListView继承L ...

  2. ListView下拉刷新、上拉载入更多之封装改进

    在Android中ListView下拉刷新.上拉载入更多示例一文中,Maxwin兄给出的控件比较强大,前面有详细介绍,但是有个不足就是,里面使用了一些资源文件,包括图片,String,layout,这 ...

  3. 【Android归纳】基于XListView的下拉刷新、上拉加载更多的控件分析

    目录 前言 功能介绍 总体设计 组成 类关系图 详细设计 XlistViewHeader原理分析 XListViewFooter原理分析 XListView原理分析 代码带注释下载 目录 前言 如果你 ...

  4. 下拉刷新及上拉加载更多的ListView

    PullToRefreshListView 自定义ListView 带简洁的下拉刷新及上拉加载更多功能 PullToRefreshListView 实现过程 使用方法 GIF效果 结束语 实现过程 继 ...

  5. 安卓下拉刷新、上拉加载数据显示

    整个是一个scrollView,嵌套一个线性布局,下拉刷新.或者上拉加载后,通过addView()方法,加载消息体,每一个消息体是一个复杂的子view. 做一个类似qq客户端"好友动态&qu ...

  6. Flutter ListView封装,下拉刷新、上拉加载更多

    Flutter ListView封装,下拉刷新.上拉加载更多 ​ 封装了Flutter的ListView,只要传递请求数据的方法和绘制item的方法进去就可以绘制ListView,同时支持下拉刷新.上 ...

  7. 使用MUI框架,模拟手机端的下拉刷新,上拉加载操作。

    套用mui官方文档的一句话:"开发者只需关心业务逻辑,实现加载更多数据即可".真的是不错的框架. 想更多的了解这个框架:http://dev.dcloud.net.cn/mui/ ...

  8. vue使用better-scroll实现下拉刷新、上拉加载

    本文目的是为了实现列表的下拉刷新.上拉加载,所以选择了better-scroll这个库. 用好这个库,需要理解下面说明 必须包含两个大的div,外层和内层div 外层div设置可视的大小(宽或者高)- ...

  9. vue better-scroll 使用 下拉刷新、上拉加载

    我的目的是为了实现列表的下拉刷新.上拉加载,所以选择了better-scroll这个库. 用好这个库,需要理解下面说明 必须包含两个大的div,外层和内层div 外层div设置可视的大小(宽或者高)- ...

  10. vant实现下拉刷新和上拉加载_微信小程序 - 实现下拉刷新、上拉加载

    在小程序开发中使用下拉刷新和上拉加载非常多,比如常用的展示型首页,而实现这个功能有两种形式,第一种是使用 scroll-view 组件,第二种是不使用 scroll-view 组件而让整个页面刷新,那 ...

最新文章

  1. Cell Reports:张瑞福团队揭示抗生素调控微生物肥料菌种根表定殖成膜的新机制...
  2. 循环数组函数c语言,C语言练习题2(分支结构循环结构数组函数2009-2012二级真题)..doc...
  3. java search 不能使用方法_elasticsearch(七)java 搜索功能Search Request的介绍与使用...
  4. LeetCode 11盛水最多的容器12整数转罗马数字
  5. Selenium模拟光标进入和tab键移动
  6. ios学习笔记block回调的应用(一个简单的例子)
  7. Python将浏览器cookies共享给requests库
  8. Magic Maze dfs + dp
  9. Docker学习总结(65)—— 容器引擎 Docker 与 Podman 的详细对比分析
  10. SSM-水果商城-导入项目-学习-2
  11. 580显卡驱动_越贵的显卡越好吗?顶级AMD RX580功耗超过200W,RMB只买了外观?
  12. 阶段1 语言基础+高级_1-3-Java语言高级_06-File类与IO流_05 IO字符流_4字符输出流的基本使用_写出单个字符...
  13. 在Java中使用Rserve调用R
  14. linux centos7 配置ftp,Linux Centos7配置ftp服务器
  15. 穿越机用途和机架尺寸
  16. win11卸载软件在哪里?
  17. [K/3Cloud]关于选单操作
  18. 删除dataframe中的某行 删除不掉是为啥
  19. php js变量值sql_php 变量查询数据库
  20. php 精品课程,基于PHP的精品课程教学网站

热门文章

  1. php将多个页面写在一个页面,php – 将多个标签添加到WooCommerce单个产品页面
  2. javascript的ES6学习总结(第三部分)
  3. HashMap源码分析1:添加元素
  4. 有关RSA 命令总结
  5. 讨论:如何降低Cocos2d开发的游戏包体大小
  6. 理论物理极础1. 经典物理的本性
  7. 索引键的唯一性(2/4):唯一与非唯一聚集索引
  8. HTML textarea标签属性
  9. SpringMvc之集成Swagger
  10. Properties文件读取学习笔记