加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

Android开发中三步实现ListView简单分页

(2023-07-01 21:46:31)
分类: androidios

转:https://www.cnblogs.com/xyblog/p/16362182.html


先看效果,仅仅介绍分页,没加任何加载特效,注意看滚动条变化

https://img2022.cnblogs.com/blog/221373/202206/221373-20220610095447622-1462302306.gif

 

上代码

第一步:声明分页必须的三个变量

1 int count=0;
2 int pageIndex=1;
3 int pageSize=10;

第二步:ListView添加滚动监听事件,判断到底部后,异步拉取数据
listView.setOnScrollListener(new AbsListView.OnScrollListener() {
            @Override
            public void onScrollStateChanged(AbsListView absListView, int i) {
                // 判断是否滚动到底部
                if (absListView.getLastVisiblePosition() == absListView.getCount() - 1) {
                    if(pageIndex<=(count+pageSize-1)/pageSize) {
                        storeApiPresenter.getStoreList(pageIndex,pageSize);
                    }
                    pageIndex++;
                }
            }

            @Override
            public void onScroll(AbsListView absListView, int i, int i1, int i2) {

            }
        });

 

第三步:刷新ListView

list.clear();
list.addAll(tempList);
listViewAdapter.notifyDataSetChanged();

 

注意点:

list全局声明:List list=new ArrayList<>();并且new一次即可,二次实例化会导致notifyDataSetChanged没有效果,listview不更新数据
listViewAdapter适配器也要全局声明

0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有