`

ListView 滚动翻页/滚动加载

 
阅读更多
ListView 滚动翻页/滚动加载
2011年02月09日 星期三 下午 4:44

1.滚动加载

listView.setOnScrollListener(new OnScrollListener() {
//添加滚动条滚到最底部,加载余下的元素
@Override
public void onScrollStateChanged(AbsListView view, int scrollState) {
if (scrollState == OnScrollListener.SCROLL_STATE_IDLE) {
loadRemnantListItem();
}
}
@Override
public void onScroll(AbsListView view, int firstVisibleItem, int visibleItemCount, int totalItemCount) {}
});


listView.setOnItemSelectedListener(new OnItemSelectedListener() {
//按键选择List中的item,焦点落在最下面的view上加载余下的item
@Override
public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
if(footerView == view) {
loadRemnantListItem();
listView.setSelection(position - 1);
}
}
@Override
public void onNothingSelected(AdapterView<?> parent) {}
});

private void loadRemnantListItem() {//滚到加载余下的数据
//动态的改变listAdapter.getCount()的返回值
//使用Handler调用listAdapter.notifyDataSetChanged();更新数据
}

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

//滚到加载余下的数据
private void loadRemnantListItem() {
//动态的改变listAdapter.getCount()的返回值
//使用Handler调用listAdapter.notifyDataSetChanged();更新数据
}
这个方法中在” //动态的改变listAdapter.getCount()的返回值“这个位置可以写listAdapter.count =+ 10;表示每次滚动到最后加10跳,当然还要加上判断到最后不够10条的时候
if((listData.size()-listAdapter.count)/10==0)
{
listAdapter.count += ((listData.size()-listAdapter.count)%10;
或者listAdapter.count = listData.size();
}

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


分享到:
评论

相关推荐

    listview分页加载

    android中listview数据分页加载功能实现

    Android基于ListView实现类似QQ空间的滚动翻页与滚动加载效果

    主要介绍了Android基于ListView实现类似QQ空间的滚动翻页与滚动加载效果,涉及ListView相关属性与方法的操作技巧,需要的朋友可以参考下

    动态加载ListView的例子

    动态加载 ListView.开始Listview显示10个,然后滑动到最后一个的时候显示正在加载。。等字样,动态加载下10个数据。只是模拟简单实现

    Qt qml中listview 列表视图控件(下拉刷新、上拉分页、滚动轴)

    Qt qml listview下拉刷新和上拉分页主要根据contentY来判断。但要加上顶部下拉指示器、滚动条,并封装成可简单调用的组件,着实花了我不少精力:) 先给大家展示下效果图: 【功能】 下拉刷新和上拉分页逻辑 /...

    Android程序开发ListView+Json+异步网络图片加载+滚动翻页的例子(图片能缓存,图片不错乱)

    例子中用于解析Json的Gson请自己Google下载 主Activity: package COM.Example.Main; import java.util.HashMap; import java.util.Iterator; import java.util.LinkedList; import java.util.List;...impor

    android开发demo集合

    47、ListView 上拉加载更多效果 48、异步加载图片的二级缓存技术 49、QQ的好友列表展示效果 50、Fragment + ViewPager实现tab滑动切换 51、能够显示在桌面前面的的歌词效果 52、activity切换特效

    android初学者入门项目

    47、ListView 上拉加载更多效果 48、异步加载图片的二级缓存技术 49、QQ的好友列表展示效果 50、Fragment + ViewPager实现tab滑动切换 51、能够显示在桌面前面的的歌词效果 52、activity切换特效

    《程序天下:JavaScript实例自学手册》光盘源码

    6.15 经典的ListView列表框 第7章 键盘操作和状态栏特效 7.1 按功能键返回首页 7.2 回车实现Tab键功能 7.3 Ctrl+Enter提交数据 7.4 IE中屏蔽退格建(Back Space) 7.5 屏蔽键盘所有键 7.6 JavaScript捕获方向键 7.7 ...

    程序天下:JavaScript实例自学手册

    6.15 经典的ListView列表框 第7章 键盘操作和状态栏特效 7.1 按功能键返回首页 7.2 回车实现Tab键功能 7.3 Ctrl+Enter提交数据 7.4 IE中屏蔽退格建(Back Space) 7.5 屏蔽键盘所有键 7.6 JavaScript捕获方向键 7.7 ...

    VBA常用技巧

    技巧24在工作表中上下翻页69 技巧25工作表的添加与删除70 技巧26禁止删除指定工作表74 技巧27自动建立工作表目录76 技巧28工作表的深度隐藏78 技巧29防止更改工作表的名称80 技巧30工作表中一次插入多行81 技巧31...

    VBA编程技巧大全

    技巧24 在工作表中上下翻页 71 技巧25 工作表的添加与删除 72 技巧26 禁止删除指定工作表 76 技巧27 自动建立工作表目录 78 技巧28 工作表的深度隐藏 80 技巧29 防止更改工作表的名称 82 技巧30 工作表中一次插入...

    asp.net知识库

    完整的动态加载/卸载程序集的解决方案 从NUnit中理解.NET自定义属性的应用(转载) 如何在.NET中实现脚本引擎 (CodeDom篇) .NET的插件机制的简单实现 我对J2EE和.NET的一点理解 难分难舍的DSO(一) ...

Global site tag (gtag.js) - Google Analytics