Android 以最少的工作量加载大图像

Android 以最少的工作量加载大图像,android,listview,optimization,Android,Listview,Optimization,我的服务器中有高质量、丰富的彩色图像。我在列表视图中以小图像视图显示它们。用户选择项目后,将获得所选图像的全屏显示。通过这种方式,在选择图像后,图像会快速加载,因为它已经加载,我将它们保存在缓存中 问题是第一次启动时整个列表的加载速度非常慢,因为每个项目都需要下载。是否有任何方法可以减少列表视图中的图像加载?在我的视野中,ListView应该加载得很快,选择后图像可能加载得更长。我知道我可以通过将低质量、调整大小的图像从服务器传递到列表来优化这一点。并在选择后传递高质量的图像url。但这是一项非

我的服务器中有高质量、丰富的彩色图像。我在
列表视图中以小图像视图显示它们。用户选择项目后,将获得所选图像的全屏显示。通过这种方式,在选择图像后,图像会快速加载,因为它已经加载,我将它们保存在缓存中

问题是第一次启动时整个列表的加载速度非常慢,因为每个项目都需要下载。是否有任何方法可以减少
列表视图中的图像加载?在我的视野中,
ListView
应该加载得很快,选择后图像可能加载得更长。我知道我可以通过将低质量、调整大小的图像从服务器传递到列表来优化这一点。并在选择后传递高质量的图像url。但这是一项非常大的工作,因为我有大量的图片,调整每一张图片的大小都会很痛苦

有什么好主意吗?我该怎么优化它呢

更新:我想我的问题不够清楚。ListView或图像加载没有问题。我不会在某个“加载”屏幕上挂起用户,我会异步加载图像,并模拟正在为ListView中的每个项目加载图像。但是由于互联网连接速度慢,缩略图在那里停留的时间太长,我想用户会退出应用程序。。。我正在寻找一种优化加载过程的方法。加载刚刚调整大小的图像会很棒,比如:ListView为50kb,SelectedView为fullsize。我认为这样用户体验会更好。

您可以使用。它使您能够在后台线程上下载图像。基本上,您可以使用一些默认的缩略图显示
列表视图
,当下载每个图像时,UIL将用真实图像替换缩略图

这样,用户在下载图像时不会被困住,但显示所有缩略图肯定需要下载所有大图像,直到您开始为图像提供小变体

您可以使用。它使您能够在后台线程上下载图像。基本上,您可以使用一些默认的缩略图显示
列表视图
,当下载每个图像时,UIL将用真实图像替换缩略图

这样,用户在下载图像时不会被困住,但显示所有缩略图肯定需要下载所有大图像,直到您开始为图像提供小变体

。通用映像加载程序是异步的,使用缓存,是LazyLoading的改进版本

您可以在内存或光盘中缓存图像。您还可以提供自定义文件夹来缓存图像。Universal Image Loader还为您提供其他配置选项

。您还可以使用延迟加载

要获得性能和平滑滚动,请使用ViewHolder

。listview的视图支架上的对话。

。通用映像加载程序是异步的,使用缓存,是LazyLoading的改进版本

您可以在内存或光盘中缓存图像。您还可以提供自定义文件夹来缓存图像。Universal Image Loader还为您提供其他配置选项

。您还可以使用延迟加载

要获得性能和平滑滚动,请使用ViewHolder


。listview的视图支架上的对话。

您正在执行的过程是正确的,您正在考虑执行的操作(调整大小)可以通过一些代码实现。是的,快速加载图像需要高速网络连接。。你问了这个问题。这和链接中的问题有什么关系吗?通过代码调整大小会很好。但我连一点线索都没有,我应该开始看什么呢。Raghunandan,不,我让它工作了,只是在寻找一种优化它的方法。很抱歉忘记接受你的回答。你正在做的过程是正确的,你想做的事情(调整大小)可以通过一些代码实现。是的,快速加载图像需要高速网络连接。。你问了这个问题。这和链接中的问题有什么关系吗?通过代码调整大小会很好。但我连一点线索都没有,我应该开始看什么呢。Raghunandan,不,我让它工作了,只是在寻找一种优化它的方法。很抱歉忘记接受你的回答