Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/205.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android动态加载ListView 我正在使用ArrayAdapter在ListView中添加项。 首先在ListView中显示15项 滚动至底部,它必须从web API获取并显示下15个内容_Android_Listview_Android Listview_Asp.net Web Api_Android Scrollview - Fatal编程技术网

Android动态加载ListView 我正在使用ArrayAdapter在ListView中添加项。 首先在ListView中显示15项 滚动至底部,它必须从web API获取并显示下15个内容

Android动态加载ListView 我正在使用ArrayAdapter在ListView中添加项。 首先在ListView中显示15项 滚动至底部,它必须从web API获取并显示下15个内容,android,listview,android-listview,asp.net-web-api,android-scrollview,Android,Listview,Android Listview,Asp.net Web Api,Android Scrollview,给出一些想法。设置CrollListener。检查有多少元素是可见的,这是第一个可见的元素 @Override public void onScroll(AbsListView view, int firstVisibleItem, int visibleItemCount, int totalItemCount) { if(((firstVisibleItem + visibleItemCount) == totalItemCount) && (to

给出一些想法。

设置CrollListener。检查有多少元素是可见的,这是第一个可见的元素


@Override
        public void onScroll(AbsListView view, int firstVisibleItem, int visibleItemCount, int totalItemCount) {

            if(((firstVisibleItem + visibleItemCount) == totalItemCount) && (totalItemCount > 0)) {
                loadNewData();
            }
        }

设置OnScrollListener。检查有多少元素是可见的,这是第一个可见的元素


@Override
        public void onScroll(AbsListView view, int firstVisibleItem, int visibleItemCount, int totalItemCount) {

            if(((firstVisibleItem + visibleItemCount) == totalItemCount) && (totalItemCount > 0)) {
                loadNewData();
            }
        }
当项目可见时,将调用适配器的
getView()
。 因此,您可以在项目可见时调用适配器的
getView(14,convertView,parent)
getView()
时开始提取并显示next 15。
因此,当
getView(14,convertView,parent)
从internet加载数据是一项耗时的任务时,您可以开始提取并显示next 15。因此,AsyncTask被实现来处理
ListView
位图也被加载到后台线程中,您可以忽略并获取其他位图,以及
onPostExecute()中的
setListAdapter()


从internet加载数据是一项耗时的任务。因此,AsyncTask被实现来处理
ListView
位图也被加载到后台线程中,您可以忽略并获取其他位图,以及
onPostExecute()中的
setListAdapter()


有一个关于图像延迟加载的教程。你应该去看看

下面是GitHub的一些lazy listview演示

希望这些能帮上忙


[感谢代码和教程的原始作者]

有一个关于图像延迟加载的教程。你应该去看看

下面是GitHub的一些lazy listview演示

希望这些能帮上忙


[感谢代码和教程的原始作者]

这是另一回事。该示例显示了如何使用预定义元素“惰性”加载图像。Jeeva询问如何动态地将元素添加到列表的底部。这是不同的。该示例显示了如何使用预定义元素“惰性”加载图像。Jeeva询问如何动态地将元素添加到列表的底部。我觉得我需要在这里发表评论,不是为了破坏这个答案,而是为了警告人们使用
onScroll
的缺点。我一直在测试它,因为我需要一种动态加载数据的机制,我注意到的一件事是,如果用户太快地抛出列表,代码可能永远不会运行。这当然是个问题。在我的例子中,我需要能够动态加载列表,即使用户抛出。如果您只想在列表的末尾或开头加载,那么这个答案就可以了。但是如果人们走这条路,我想节省一些时间,而这一限制导致了一个问题:)我觉得我需要在这里发表评论,不是为了破坏这个答案,而是为了警告人们使用
onScroll
的缺点。我一直在测试它,因为我需要一种动态加载数据的机制,我注意到的一件事是,如果用户太快地抛出列表,代码可能永远不会运行。这当然是个问题。在我的例子中,我需要能够动态加载列表,即使用户抛出。如果您只想在列表的末尾或开头加载,那么这个答案就可以了。但如果人们走这条路线,并且这一限制导致了一个问题,那么他们希望节省一些时间:)