Android 它们的定义ListView实现底部和页下拉刷新刷新的顶
在项目开发。由于数据量过大,寻呼需要加载或下拉刷新。为了缓解长期等待-time负载。这个博客的评论中被自己的定义实例ListView实现底部的下拉刷新页面正在加载结果和顶部。
其效果图:
一.ListView 底部分页载入
整个底部分页载入。主要分一下几步:
1.载入底部自己定义View;
2.响应OnScrollListener监听事件,onScroll方法记录最后可见的View Item以及整个totalItemCount。
当onScrollStateChanged状态改变时,
当滑动究竟端,并滑动状态为 SCROLL_STATE_IDLE,显示底部载入View,開始实现自己定义载入接口;
3.当数据载入完毕时。隐藏底部下拉View.
自己定义底部下拉载入PaginationListView代码例如以下:
底部下拉载入布局footer.xml
二.ListView顶部下拉刷新数据顶部下拉刷新的过程例如以下:
1.载入顶部自己定义View,通过设置View的边距来显示和隐藏View;
2.通过OnScrollListener监听事件,获取ListView的活动状态以及firstVisibleItem首位可见的Item;
3.通过OnTouchListener监听事件。通过推断是否在首位。以及处理ACTION_DOWN,ACTION_MOVE,ACTION_UP
各个状态事件,并记录none(正常),pull(下拉),release(释放),reflashing(刷新)等状态。
ACTION_DOWN:推断是否在首列,若是。记录该点位置startY;
ACTION_MOVE:记录移动后的tempY,获取间距space,与View的高度比較后,动态获取View上边距,并设置。
ACTION_UP:记录为reflashing状态。刷新数据
4.刷新完毕后。还原各自所处状态,隐藏View。
顶部下拉刷新自己定义ReflashListVIew
顶部下拉刷新布局top.xml
三.其它文件代码1.主布局activity_main.xml
2.底部分页布局activity_pagination.xml3.顶部下拉刷新activity_refresh.xml4.Adapter载入布局list_view.xml
5.实体ApkBean
6.适配器DemoAdapter
7.主函数MainActivity.java,一个ListView中包括底部下拉载入和顶部下拉刷新数据。
8.分页载入PaginationActivity.java,使用PaginationListView
9.顶部刷新RefreshActivity.java,使用自己定义RefreshListView
以上就是本文全部内容。源代码下载地址:http://download.csdn.net/detail/a123demi/8147253
版权声明:本文博客原创文章,博客,未经同意,不得转载。