2015-05-26 49 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

相關問題