如今有两个问题要解决,第一个问题要知道用户是否滑到了ListView的最后一项;第二个问题是怎样提示用户正在载入下一页的数据,让用户耐心等待。
解决第一个问题,我们仅仅需自己定义ListView,让它实现OnScrollListener类监听ListView的滑动状态,以此来推断是否滑动到了最后一项
[java] viewplaincopy
- @Override
- public void onScroll(AbsListView view, int firstVisibleItem,
- int visibleItemCount, int totalItemCount ) {
- if (getAdapter() == null){
- return ;
- }
- if (getAdapter().getCount() == 0){
- return ;
- }
- int lastItemIndex = firstVisibleItem + visibleItemCount;
- if (lastItemIndex >= totalItemCount){
- // 用户已经滑动到了ListView的最后一项
- }
要解决第二个问题也是在onScroll()方法中来实现
[java] view
plaincopy
- @Override
- public void onScroll(AbsListView view, int firstVisibleItem,
- int visibleItemCount, int totalItemCount) {
- if (getAdapter() == null){
- return ;
- }
- if (getAdapter().getCount() == 0){
- return ;
- }
- int lastItemIndex = firstVisibleItem + visibleItemCount;
- if (lastItemIndex >= totalItemCount && ! isLoading){
- addFooterView( footerView );//用来提示用户正在载入下一页的数据
- isLoading = true ;
- listener.loadData();
- }
当监听到用户滑动到最后一项时,加入footerView,并通知进行数据载入。
以下是一个简单的样例源代码
很多其它0
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)