async void SetImage(ImageCell cell, CellTableViewCell target) { var source = cell.ImageSource; target.ImageView.Image = null; IImageSourceHandler handler; if (source != null && (handler = Registrar.Registered.GetHandler <IImageSourceHandler>(source.GetType())) != null) { UIImage uiimage; try { uiimage = await handler.LoadImageAsync(source).ConfigureAwait(false); } catch (TaskCanceledException) { uiimage = null; } NSRunLoop.Main.BeginInvokeOnMainThread(() => { target.ImageView.Image = uiimage; target.SetNeedsLayout(); }); } else { target.ImageView.Image = null; } }
async void SetImage(ImageCell cell, CellTableViewCell target) { var source = cell.ImageSource; target.ImageView.Image = null; IImageSourceHandler handler; if (source != null && (handler = Registrar.Registered.GetHandler<IImageSourceHandler>(source.GetType())) != null) { UIImage uiimage; try { uiimage = await handler.LoadImageAsync(source).ConfigureAwait(false); } catch (TaskCanceledException) { uiimage = null; } NSRunLoop.Main.BeginInvokeOnMainThread(() => { target.ImageView.Image = uiimage; target.SetNeedsLayout(); }); } else target.ImageView.Image = null; }
async void SetImage(ImageCell cell, CellTableViewCell target) { var source = cell.ImageSource; target.ImageView.Image = null; var uiimage = await source.GetNativeImageAsync().ConfigureAwait(false); if (uiimage != null) { NSRunLoop.Main.BeginInvokeOnMainThread(() => { if (target.Cell != null) { target.ImageView.Image = uiimage; target.SetNeedsLayout(); } else { uiimage?.Dispose(); } }); } }