2015-05-26 48 views
-1

我需要在我的android应用程序中创建一个平滑且漂亮的图像库(GridView中的图像,并且每个图像都可以在viewpager中进行缩放(向左/向右滑动))。要下载并显示来自Amazon S3的图像的图像库

我的照片可以在Amazon S3上下载。

现在,我的问题是什么是从S3下载图片并显示它们的最佳方式。目前,我从S3下载图片(如果他们还没有在SD卡上,图书馆,TransferManager,在一个asynctask),一旦下载到SD卡中的特定文件夹,我通过UNiversalImageLoader库。但是我发现这个过程有点慢,而且不太流畅,当有几张图片需要加载时(即使它们已经下载到SD卡上),应用程序会有点麻烦。我的过程中应该改变什么?用亚马逊生成动态网址然后通过库下载它会更好吗?是File.exists检查(看看我是否需要下载图片),这是慢?

我需要为我的画廊以下特点: - 视图图像画廊(GridView控件) - 查看图像是否SD卡上,如果不从S3下载,如果SD卡上,显示他们在画廊 - 下载特定SD卡的位置 - 查看viewpager每个图像(刷卡左/右)

感谢您的帮助,

亨利

回答

0

可以使用Picasso库。它用于加载和缓存您不需要管理图像缓存的图像,图书馆可以为您做到这一点。示例如下,

Picasso.with(context).load("http://i.imgur.com/DvpvklR.png").into(imageView); 
+0

是否将图像缓存在磁盘上?我该如何从amazon s3下载图像? – user3900157

+0

将你的亚马逊s3图像url作为'load()'函数的参数。它会下载并缓存图像。 –

+0

是的,但我必须生成一个动态网址,例如1分钟(因为图像是私人的),所以你认为缓存将动态url正确工作?我们可以指定磁盘上的特定位置来缓存吗? – user3900157

相关问题