2017-10-28 58 views
0

我想從資源庫網址,以獲取UIImage如何從資源庫網址在Xamarin IOS得到的UIImage

我在xamarin IOS的​​開發應用,試圖從一個給定的資產庫得到一個UIImage對象-url。

使用ELCImagePickerViewController從圖庫中選取多個圖像。 所有圖像路徑都添加到字符串數組列表中。
現在我需要使用Asset-Library-Url路徑獲取Byte[]中的所有圖像。

指定的網址是:

資產庫://asset/asset.JPG ID = 0E126068-14F9-431F-91B5-8BC397727656 & EXT = JPG

我試着它用以下方法:

static UIImage FromUrl(string uri) 
{ 
    using (var url = new NSUrl(uri)) 
    using (var data = NSData.FromUrl(url)) 
    return UIImage.LoadFromData(data); 
} 

但它總是返回null。 任何人都可以告訴我我在這裏做錯了嗎?

+0

指https://stackoverflow.com/questions/3837115/display-image-from -url檢索的從 - alasset合iphone –

回答

0

這些Url爲ALAssetsLibrary,您將需要使用ALAssetsLibrary來訪問它們。見下面的例子:

public Byte[] LoadAssetAsByteArray(string uri) 
{ 
    var nsUrl = new NSUrl(uri); 
    var asset = new ALAssetsLibrary(); 
    Byte[] imageByteArray = new Byte[0]; 
    UIImage image; 

    asset.AssetForUrl(nsUrl,(ALAsset obj) => { 

     var assetRep = obj.DefaultRepresentation; 
     var cGImage = assetRep.GetFullScreenImage(); 
     image = new UIImage(cGImage); 
     // get as Byte[] 
     imageByteArray = new Byte[image.AsPNG().Length]; 
     //imageView.Image = image; 
    }, 
    (NSError err) => { 
     Console.WriteLine(err); 
    }); 

    return imageByteArray; 
} 

有一個偉大的食譜上Xamarin Site使用UIImagePickerController我beleive會幫助你