2013-04-17 23 views
0

我遇到問題了。Android懶惰圖片ViewFlipper

我有片段與ViewFlipper和一些字符串數據數組(圖片網址)。

我該如何做這些圖像的延遲加載並顯示進度條,直到圖像被加載(並且如果可能,緩存它們)? 我可以使用不同的視圖(不是ViewFlipper)嗎?

第二個問題。如何讓視圖顯示當前的圖像位置?如當前圖片下的一系列黑色的白點。如果當前第一個圖像 - 第一個黑點。 謝謝。

回答

0

谷歌有一個培訓課回答你的第一個問題here。它向您展示瞭如何使用AsyncTask在後臺加載位圖,並在顯示ProgressBar時將其緩存在內存中,並在內存中以LruCache和磁盤上的DiskLruCache(包含在鏈接中的BitmapFun.zip下載內容)顯示,直到圖像已下載

我可以使用不同的視圖(不是ViewFlipper)嗎?

上述示例使用ViewPager。

一系列在當前圖片下帶有黑色的白點。

我不知道是否有這樣的Android SDK視圖,但this第三方小部件(Apache 2.0許可證)似乎做你想做的。

我如何保持鏈接在ImageView和ProgressBar上?

我不知道我理解的問題,但如果你是問你如何從進度去(當圖像加載)到ImageView的那麼答案就是使用與進度一的FrameLayout和ImageView的在它:

<FrameLayout ...> 
    <ProgressBar ... /> 
    <ImageView 
    android:id="@+id/imageView" 
    ... /> 

</FrameLayout> 

(見image_detail_fragment.xml演習瞭解詳細信息)

的ImageView的將在進度條的前繪製,但是,因爲它會原本沒有背景,沒有像這將是透明的, ProgressBar將顯示。

然後,使用ID檢索你的代碼中的ImageView,當你在一個位圖加載你的形象,你使用:

imageView.setImageDrawable(loadedImage); 

既然ImageView的具有圖像也不會是透明瞭和ProgressBar將不會顯示(如果要將其設置爲View.GONE以優化佈局,還可以將ID添加到進度欄)。

+0

我如何保持ImageView和ProgressBar上的鏈接? –