我被困在一点上。我需要同样的建议。 我正在创建一个涉及json解析的应用程序。解析后我得到的数据涉及事件名称,事件描述,事件地点,事件图像URL等。数据巨大。你可以想象facebook有点儿的东西。
现在问题是数据被解析但是因为事件图像是url的形式,我需要将其转换为Bitmap。 我已将json解析和位图转换的所有过程保存到一个AsyncTask(doInBackground())中。
这需要花费大量时间。我想要像facebook这样的东西,数据被加载并显示给最终用户,但图像加载缓慢而稳定。 (我的意思是当我们滚动facebook时,图像不会立即出现)。
我想要一个类似的功能。我需要建议。
答案 0 :(得分:2)
您仍然可以使用AsyncTask,只需要使用两个单独的任务。 一个用于加载和解析JSON,另一个用于加载图像。
在解析JSON之后,您需要为您尝试加载的每个图像启动AsyncTask,使它们全部加载到自己的线程上。它会在项目完成加载后显示。
答案 1 :(得分:0)
以下是您的解决方案https://github.com/nostra13/Android-Universal-Image-Loader
您只需将url和imageview资源传递给loader,它就会为您处理任务。还支持缓存。这个库很简单,也很广泛使用
答案 2 :(得分:0)
这个概念称为延迟加载(AFAIK)。您可以使用已开发的 ImageLoader 。它将在后台下载图像,一旦下载,它将设置为ImageView的背景。见Custom Downloader