ListView滚动到底部自动加载更多

我是这样做的
1.自己写一个loadingView,有2种状态 ,1种是加载时的显示,一种是加载失败(网络超时)时候的重发界面
2.将loadingView放到Listview的footview中
3.在BaseAdapter的getView中判断position是不是最后一个.例如当前有20条记录,position为19的时候触发加载下20条事件

4.所有的数据都放到一个list中,作为BaseAdapter的Dataset,更新界面用BaseAdapter的 notifyDataSetChanged() 函数。

listView.setOnScrollListener(new OnScrollListener(){
                        public void onScroll(AbsListView view, int firstVisibleItem,
                                        int visibleItemCount, int totalItemCount) {
                                lastItem = firstVisibleItem + visibleItemCount - 1 ;
                                // TODO Auto-generated method stub
                        }
                        public void onScrollStateChanged(AbsListView view,
                                        int scrollState) {
                                if (lastItem == adapter.count && scrollState == OnScrollListener.SCROLL_STATE_IDLE) { 
                                        adapter.count += 10; 
                                        adapter.notifyDataSetChanged(); 
                                        } 
                        }
            });

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值