2016-04-08 11 views
1

Ich hoffe, jemand kann mir mit diesem seltsamen Problem helfen.Problem mit Xamarin.Forms Bilder in iOS Renderer

Ich bin in Xamarin Forms, in einem Renderer. Ich übergebe einen Xamarin.Forms.ImageSource in einen ImageLoaderSourceHandler.

var_imageLoader = new ImageLoaderSourceHandler(); 

Allerdings, wenn ich die LoadImageAsync Methode await es gibt immer null, anstatt UIimage.

if (_view.Icon?.Source != null) 
{ 
    _iconImageView.Image = 
     await _imageLoader.LoadImageAsync(_view.Icon.Source); 
} 

Meine Bilder sind im Resource Verzeichnis und sind BundleResource als Build-Aktion.

Die Dateiname ist korrekt (menu.png, [email protected], [email protected]) und ich bin ausgegangen, wenn Ideen.

Wer hat eine Ahnung oder zwei? Dank

+1

Dean, können Sie den Code zeigen anstatt ihn zu beschreiben? – Jason

+0

Es ist eine große Menge an Code, so habe ich gerade die relevanten Bits hinzugefügt –

Antwort

2

ImageLoaderSourceHandler wird verwendet, wenn Sie Bilder von einer URL herunterladen möchten.

Da Ihre Dateien lokal sind, müssen Sie FileImageSourceHandler

verwenden, können Sie diese Hilfe Methode verwenden, um Sie die richtige Art zu bekommen.

private static IImageSourceHandler GetHandler(ImageSource source) 
     { 
      IImageSourceHandler returnValue = null; 
      if (source is UriImageSource) 
      { 
       returnValue = new ImageLoaderSourceHandler(); 
      } 
      else if (source is FileImageSource) 
      { 
       returnValue = new FileImageSourceHandler(); 
      } 
      else if (source is StreamImageSource) 
      { 
       returnValue = new StreamImagesourceHandler(); 
      } 
      return returnValue; 
     } 
+0

aaaaaahhhhhhhhhhhhh natürlich. Vielen Dank :) –

Verwandte Themen