[Xamarin] Android 中 使用 UrlImageViewHelper 載入網路大圖

2015-08-14

這個問題很常有人問,關於本機大圖,可以參考官方這篇 http://developer.xamarin.com/recipes/android/resources/general/load_large_bitmaps_efficiently/
不過現在圖片很多都是從網路上來,尤其是在做 List的時候,可能會載入大量網路圖片,這時候要怎麼解決呢?
這時候我推薦這個
Image 017
使用方法,因為我發現現在已經整入Xamarin Components 所以只要在專案Components 右鍵Get More Components
Image 018
搜尋 UrlImageViewHelper ,就可以安裝這元件
範例說明:
Image 019
按下按鈕btnLoad後, 我會將 一張網路上的大圖 ( http://milliwall.com/wp-content/uploads/2015/06/shield_logo_2_wallpaper_hd.jpg ) 載入到下方img1 ImageView 的物件中
載入元件Code 一切事情變得很簡單,不然要載入元件幹嘛
C# Code :



Button btnLoad = FindViewById<Button>(Resource.Id.btnLoad);
 
btnLoad.Click += delegate
{
    //其中 Resource.Drawable.user
    //是當檔案還沒下載回來時的preload Image 

Koush.UrlImageViewHelper.SetUrlDrawable(FindViewById<ImageView>(Resource.Id.img1),

"http://milliwall.com/wp-content/uploads/2015/06/shield_logo_2_wallpaper_hd.jpg", Resource.Drawable.user);

    
};

其中 Resource.Drawable.user 是黨檔案還沒下載回來得時候Preload Image
結果:
按下按鈕後 等待中-
Screenshot_2015-08-14-11-22-55
Load 成功後:
Screenshot_2015-08-14-11-22-17

遇到不少人問我這問題的,筆記一下…

Source:


當麻許的超技八 2014 | Donma Hsu Design.