【问题标题】:How to update ListView on scrolling while retrieving data from server in Android?如何在 Android 中从服务器检索数据时在滚动时更新 ListView?
【发布时间】:2012-02-13 19:45:34
【问题描述】:

目前,我正在使用 AsyncTask 来处理 Http 连接并以 JSON 格式检索数据。
加载所有数据是微不足道的,但它消耗太多时间,所以我决定切换到使用 LIMIT OFFSET (mysql) 一次加载 10 个项目。
接下来我为我的列表视图设置事件onScroll,以便在每次用户滚动时创建一个新的AsyncTask。但是,根据我的阅读,AsyncTask 存储在一个线程池中,一次限制为 5 个线程,所以我不确定这是一个正确的方法。我是客户端/服务器应用程序的新手,所以有人可以就这个问题给我一个建议吗?任何相关的文章,文档将不胜感激。

【问题讨论】:

    标签: android http client-server android-asynctask


    【解决方案1】:

    【讨论】:

    • 精彩清单!非常感谢。
    【解决方案2】:

    如果您使用的是ListView,我相信我可以有把握地假设您必须使用某种ListAdapter。与其在onScroll 事件中启动一个新的AsyncTask,不如只维护一个AsyncTask 来从服务器检索数据,将该数据添加到ListAdapter 数据集,然后在@987654328 上调用notifyDatasetChanged @。

    ListAdapterListView 将负责其余的工作。

    【讨论】:

      【解决方案3】:

      一个典型的方法是例如最初加载 25 ,然后在列表中显示一个页脚,例如当前计数和总计数,并在按下时加载另一个 25,依此类推。那将是一种分页加载。

      当您这样做时,您必须保持当前位置并通知适配器列表已更改。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2012-06-25
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2019-06-27
        • 2016-06-14
        相关资源
        最近更新 更多