检查android listview是否向下滚动到最后一项 [英] Check if android listview is scrolled down to the last item

查看:142
本文介绍了检查android listview是否向下滚动到最后一项的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个列表视图,其中有多个项目.我想检查列表是否向下滚动到最后一项,在这种情况下,我想运行另一种方法.

I have a listview in which there are several items. I want to check whether the list is scrolled down to the last item, in which case I want to run another method.How to do that?

推荐答案

首先在构造函数中设置 isLoading = false; 或在 onCreate 方法中设置

at first set isLoading = false; in the constructore or onCreate method

  mListView.setOnScrollListener(new OnScrollListener() {

        @Override
        public void onScrollStateChanged(AbsListView view, int scrollState) {

        }

        @Override
        public void onScroll(AbsListView view, int firstVisibleItem, int visibleItemCount, int totalItemCount) {
            if (mListView.getAdapter() == null)
                return ;

            if (mListView.getAdapter().getCount() == 0)
                return ;

            int l = visibleItemCount + firstVisibleItem;
            if (l >= totalItemCount && !isLoading) {
                // It is time to add new data. We call the listener
                isLoading = true;
                loadData();

            }
        }
    });

在函数 loadData 中,您可以执行以下操作:

and in function loadData you do something like:

 public void loadData() {

    // send your request
   // receive it by callback or asynctask
   yourDataList.addAll(newItems);
   adapter.notifyDataSetChanged();
   isLoading = false;
}

这篇关于检查android listview是否向下滚动到最后一项的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆