0

在我的应用程序中,我从 Web 服务以 XML 格式获取数据,并对其进行解析并在列表视图中显示数据。问题是如果 Web 服务包含 5000 个对象,那么显示数据需要很长时间。

是否可以在列表视图中显示一些数据并在列表末尾同时获取数据。

请给我一些示例代码。

4

2 回答 2

0

通过使用 AsyncTask,您可以轻松地做到这一点,因为每个正在获取的对象都可以使用 publishProgress() 方法显示在列表视图中,同时还可以向用户更新已加载数据的百分比。

更新:

顺便说一下,根据您的情况,以下由 commonsware https://stackoverflow.com/users/115145/commonsware开发的工具最适合您...

https://github.com/commonsguy/cwac-endless

cwac-endless:提供 EndlessAdapter,它是现有 ListAdapter 的包装器,可添加“无限列表”功能。当用户滚动到列表底部时,如果要检索此列表的更多数据,您的代码将在后台线程中调用以获取新行,然后无缝附加到列表底部。

于 2012-06-04T09:33:34.860 回答
0

如果您在 ListAdapter 的 getView 方法中使用 convertView ,那么列表中有多少项目并不重要,因为视图正在被重用。

如果您的 Listadapter 采用 som 排序数组,您可以将项目连续添加到数组中并调用

mListAdapter.notifyDataSetChanged();

每次将新数据添加到列表中时。

于 2012-06-04T09:34:50.997 回答