ListView 滚动翻页/滚动加载(类似QQ空间滚动加载页面)

原创 2011年01月21日 23:22:00

关键代码:
1.滚动加载

  1. listView.setOnScrollListener(new OnScrollListener() {
  2.     //添加滚动条滚到最底部,加载余下的元素
  3.     @Override
  4.     public void onScrollStateChanged(AbsListView view, int scrollState) {
  5.         if (scrollState == OnScrollListener.SCROLL_STATE_IDLE) {
  6.             loadRemnantListItem();
  7.         }
  8.     }
  9.     @Override
  10.     public void onScroll(AbsListView view, int firstVisibleItem, int visibleItemCount, int totalItemCount) {}
  11.     });
  12. listView.setOnItemSelectedListener(new OnItemSelectedListener() {
  13.     //按键选择List中的item,焦点落在最下面的view上加载余下的item
  14.     @Override
  15.     public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
  16.         if(footerView == view) {
  17.             loadRemnantListItem();
  18.             listView.setSelection(position - 1);
  19.         }
  20.     }
  21.     @Override
  22.     public void onNothingSelected(AdapterView<?> parent) {}
  23.     });
  24. private void loadRemnantListItem() {//滚到加载余下的数据
  25.     //动态的改变listAdapter.getCount()的返回值
  26.     //使用Handler调用listAdapter.notifyDataSetChanged();更新数据
  27. }
复制代码

 

  1. 2.滚动翻页
  2. listView监听器代码相同
  3. private void loadRemnantListItem() {//滚到加载余下的数据
  4.     //重新listView.setAdapter(newsAdapter);
  5.     //使用Handler调用listAdapter.notifyDataSetChanged();更新数据
  6. }
复制代码



注:在listView最下面可以试用listView.addFooterView(footerView, null, true);来显示“加载中...”等的字样来美化用户体验,在loadRemnantListItem()方法中动态控制“加载中...”的显示和不显示

前端页面实现滚动加载数据的案例

实现滚动加载内容
  • u011431550
  • u011431550
  • 2015年01月22日 23:57
  • 2556

移动端无限滚动加载 js实现原理

由于网页的执行都是单线程的,在JS执行的过程中,页面会呈现阻塞状态。因此,如果JS处理的数据量过大,过程复杂,可能会造成页面的卡顿。传统的数据展现都以分页的形式,但是分页的效果并不好,需要用户手动点击...
  • qq_17746623
  • qq_17746623
  • 2016年06月04日 10:05
  • 4112

Jquery鼠标滚动到页面底部自动加载更多内容,使用分页

滚屏加载--无刷新动态加载数据技术的应用-www.corange.cn #container{margin:10px auto;width: 660px; border: 1px solid #99...
  • jimlong
  • jimlong
  • 2014年11月15日 00:54
  • 23615

jQuery实现页面滚动图片按需加载(转载)

jquery scrolling ...
  • moffe_
  • moffe_
  • 2016年11月07日 10:29
  • 1808

滚动条到底部,自动加载数据

$(window).scroll(function(event){ var sm=$(this).scrollTop()+$(window).height(); //$(this).scrol...
  • qq_21119773
  • qq_21119773
  • 2016年08月10日 16:50
  • 1743

jQuery滚动事件之鼠标滚动到底部再加载数据

我们见过很多滚动事件:当滑动到List列表底部时,再新加载数据。 废话不多说,直接上代码 以下是 scroll.html代码 滚动条测试 ....
  • ncepu307
  • ncepu307
  • 2015年01月16日 13:57
  • 5805

Ajax无限滚动加载数据

Ajax无限滚动加载数据 A-A+ 前端博客•前端开发代码•ajax | 瀑布流布局•2783View0 很流行的ajax无限滚动加载,如何判断内容是否需要加载接口,什么时候开始加载合适,加...
  • caochenqi
  • caochenqi
  • 2016年11月29日 10:09
  • 1155

案例十二、JavaScript实现无穷滚动加载数据

首先实现滚动要借助onscroll事件处理程序。 无穷滚动就是滑动滚动条,实现数据块的无穷加载。 我们以瀑布流的布局来实现无穷加载。瀑布流就是一些等宽不等高的数据块布局。在滚动条下拉时,它会进行加...
  • csdn_zsdf
  • csdn_zsdf
  • 2017年04月17日 20:12
  • 302

Listview滑动时不加载数据,停下来时加载数据,让App更优

数据源配置(Adapter)package com.zhengsonglan.listview_loading.adapter;import android.content.Context; impo...
  • yy1300326388
  • yy1300326388
  • 2015年04月20日 18:19
  • 6275

sui mobile无限滚动时会触发多次请求问题处理

sui mobile 无限滚动时触发多次请求的问题处理
  • kinjoe_whan
  • kinjoe_whan
  • 2016年12月27日 09:57
  • 2325
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:ListView 滚动翻页/滚动加载(类似QQ空间滚动加载页面)
举报原因:
原因补充:

(最多只允许输入30个字)