android listview 上拉刷新

具体源码见,附件下载。
这里列出关键性思路:

1.先定义一个布局文件,里面放个ListView,配置宽,高。
2.再定义一个布局文件(此定义的是listview里行的布局文件),例子里面只有一个textview
3.再定义一个布局文件(此定义的是listview,addFooterView(View view)里面的view的布局),例子里面是一个ProgressBar和一个textview.很明显这个就是那个转的和提示文字。
4.开始写主Activity的代码
(1)实例化这个listview,然后创建一个adapter,这个adapter里面用的布局就是2的布局,但要注意,在setAdapter之前,请先addFooterView(footView),自然要实例化footView在进行添加。如果先setAdapter,在addFooterView会有问题。
(2)定义lastItem(表示手机显示数据的最后一条,没包括那个footview那行),定义count(表示list<String>里面的总记录)
(3)listview.setOnScrollListener(new AbsListView.OnScrollListener(){
onScrollStateChanged()....
onScroll().....//每次滚动的时候都会回调此方法,参数有,显示的最小索引,显示的记录条数,两个一加,减去1,减去footer的那个view,就是目前显示的最大索引,然后在onScrollStateChanged里面判断,这个最大索引是否和list<String>的记录数相等,相等表示已经到末尾了,显示ProgressBar,开始添加新的数据给list<String>,count重新赋值,然后调用adapter.notifyDataSetChanged();改变UI。隐藏那个ProgressBar.

猜你喜欢

转载自staroflife.iteye.com/blog/1749579
今日推荐