/// <inheritdoc /> public Task <IBitmap> LoadFromResource(string source, float?desiredWidth, float?desiredHeight) { var tcs = new TaskCompletionSource <IBitmap>(); NSRunLoop.Main.BeginInvokeOnMainThread(() => { try { #if UIKIT var bitmap = UIImage.FromBundle(source); #else var bitmap = UIImage.ImageNamed(source); #endif if (bitmap == null) { throw new Exception("Failed to load image from resource: " + source); } tcs.TrySetResult(new CocoaBitmap(bitmap)); } catch (Exception ex) { tcs.TrySetException(ex); } }); return(tcs.Task); }
public Task <IBitmap> LoadFromResource(string source, float?desiredWidth, float?desiredHeight) { var tcs = new TaskCompletionSource <IBitmap>(); #if UIKIT NSRunLoop.InvokeInBackground(() => { try { var bitmap = UIImage.FromBundle(source); if (bitmap == null) { throw new Exception("Failed to load image from resource: " + source); } tcs.TrySetResult(new CocoaBitmap(bitmap)); } catch (Exception ex) { LogHost.Default.Debug(ex, "Unable to parse the known colour name."); tcs.TrySetException(ex); } }); #else NSRunLoop.Main.BeginInvokeOnMainThread(() => { try { var bitmap = UIImage.ImageNamed(source); if (bitmap == null) { throw new Exception("Failed to load image from resource: " + source); } tcs.TrySetResult(new CocoaBitmap(bitmap)); } catch (Exception ex) { tcs.TrySetException(ex); } }); #endif return(tcs.Task); }