我正在使用ListView来显示与这些图像相关的一些图像和标题。我正在从互联网上获取图像。是否有一种方法可以延迟加载图像,以便在文本显示时,UI不会被阻止,图像在下载时显示?
图像总数不是固定的。
我正在使用ListView来显示与这些图像相关的一些图像和标题。我正在从互联网上获取图像。是否有一种方法可以延迟加载图像,以便在文本显示时,UI不会被阻止,图像在下载时显示?
图像总数不是固定的。
当前回答
您可以尝试使用Aquery Android库来延迟加载图像和列表视图。。。以下代码可能会帮助您。。。。。从这里下载库。
AQuery aq = new AQuery(mContext);
aq.id(R.id.image1).image("http://data.whicdn.com/images/63995806/original.jpg");
其他回答
我这样做的方式是启动一个线程,在后台下载图像,并为每个列表项传递一个回调。当图像下载完成后,它将调用回调,以更新列表项的视图。
然而,当您回收视图时,这种方法不太有效。
Novoda还有一个很棒的懒人图像加载库,许多应用程序如Songkick、Podio、SecretDJ和ImageSearch都使用其库。
他们的库托管在Github上,他们还有一个非常活跃的问题跟踪程序。他们的项目似乎也很活跃,在撰写回复时提交了超过300次。
我已经关注了这个Android培训,我认为它在下载图像而不阻塞主UI方面做得很好。它还处理缓存和滚动许多图像:高效加载大型位图
试试看。它有非常简单的异步加载和缓存图像的方法。
DroidParts的ImageFetcher需要零配置才能启动。
使用磁盘和内存中最近最少使用(LRU)缓存。高效解码图像。支持在后台线程中修改位图。具有简单的交叉褪色。具有图像加载进度回调。
例如,克隆DroidPartsGram: