文档章节

listview上拉加载

小情绪在洒脱
 小情绪在洒脱
发布于 2016/07/28 15:35
字数 191
阅读 5
收藏 0
public class MainActivity extends Activity {

	private XListView mXlv;
	// 适配器
	private ArrayAdapter<String> mAdapter;
	// 数据
	private List<String> mList = new ArrayList<String>();

	/**
	 * 造数据
	 */
	private void generateData() {
		int size = mList.size();
		// 一页显示10条
		for (int i = 0; i < 10; i++) {
			mList.add(0,"item" + (size + i));
		}
	}

	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.activity_main);

		mXlv = (XListView) findViewById(R.id.xlv);

		//支持下拉刷新
		mXlv.setPullRefreshEnable(true);
		//支持上拉加载
		mXlv.setPullLoadEnable(true);
		// 造数据
		generateData();
		//创建adapter
		mAdapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, mList);
		mXlv.setAdapter(mAdapter);
		
		mXlv.setXListViewListener(new XListView.IXListViewListener() {
			
			@Override
			public void onRefresh() {
				mList.clear();//清空数据
				generateData();
				//刷新
				mAdapter.notifyDataSetChanged();
				//设置ui状态
				stopLoadOrRefresh();
			}
			
			@Override
			public void onLoadMore() {
				generateData();//加载下一页数据
				//刷新
				mAdapter.notifyDataSetChanged();
				//设置ui状态
				stopLoadOrRefresh();
			}
		});
	}
	
	
	private void stopLoadOrRefresh(){
		mXlv.stopLoadMore();
		mXlv.stopRefresh();
	}
}
2.布局文件
<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="${relativePackage}.${activityClass}" >

    <me.maxwin.view.XListView
        android:id="@+id/xlv"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"/>

</RelativeLayout>

 

© 著作权归作者所有

共有 人打赏支持
小情绪在洒脱
粉丝 3
博文 18
码字总数 19251
作品 0
海淀
程序员
基于V4包SwipeRefreshLayout添加上拉加载功能。

上拉加载下拉刷新是在Android开发中使用最广泛的控件,官方在V4包中已经对下拉刷新有了提供一个控件, 有兴趣的童鞋可以去看看,很好用的一个控件,但是在国内上拉加载却同样常用 这是代码:...

xiaolei123
2016/07/04
121
0
Jaynm/PullToRefreshListView

PullToRefreshScrollViewDemo Android使用PullToRefresh完成ListView下拉刷新和左滑删除 一、本文主要内容: 使用PullToRefresh完成ListView下拉、上拉刷新; 扩展PullToRefresh完美的实现L...

Jaynm
2016/11/03
0
0
GoRefresh!让下拉刷新轻松炫酷

GoRefresh是本人写的一个下拉刷新框架。暂支持listview recyclerview scrollerview webview 。同时支持listview和recyclerview上拉加载。 以下是demo的几个gif(有的图上传不上来) 为什么写...

chiyidun
2017/12/12
0
0
OneXListview

原始组件说明 整合和扩展了如下项目 XListview 上拉加载,下拉刷新,listview PinterestLikeAdapterView 类似于pinterest瀑布流实现 https://github.com/emilsjolander/StickyListHeaders 列表...

打杂程序猿
2013/05/04
7.6K
0
Android中自定义listView的bug

自定义的一个ListView,名字叫PullToRefreshSwipeMenuListView,带下拉刷新,上拉加载的功能,但是不知道在上拉加载的过程中,为什么可以一直向上拉,没有条目的情况下,也可以向上拉。...

一定要霸气SL
2016/06/23
120
1

没有更多内容

加载失败,请刷新页面

加载更多

关于Jackson默认丢失Bigdecimal精度问题分析

问题描述 最近在使用一个内部的RPC框架时,发现如果使用Object类型,实际类型为BigDecimal的时候,作为传输对象的时候,会出现丢失精度的问题;比如在序列化前为金额1.00,反序列化之后为1.0...

ksfzhaohui
21分钟前
0
0
vue less安装

$ npm install less less-loader --save 安装成功后修改文件:build>webpack.base.conf.js 在model.rules添加对象: { test: /\.less$/, loader: "style-loader!css-loader!less-loade......

shawnDream
27分钟前
1
0
kolla-ansible部署容器ceph

kolla是从openstack孵化出的一个项目,kolla项目可以制作镜像包括openstack、ceph等容器镜像, ansible是自动化部署工具,执行playbook中的任务。 kolla-ansible是容器部署工具,部署opensta...

zrz11
31分钟前
1
0
【三 异步HTTP编程】 1. 处理异步results

异步results 事实上整个Play框架都是异步的。Play非阻塞地处理每个request请求。 默认的配置适配的正是异步的controller。因此开发者应该尽力避免在在controller中阻塞,如在controller方法中...

Landas
33分钟前
0
0
Android Studio 3.1.4 buildApk遇到问题 Connection reset

打开设置,找到Android Studio选项卡,把下图选项打上勾就ok

lanyu96
34分钟前
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部