Skip to content

Instantly share code, notes, and snippets.

@Clancey
Created April 6, 2016 19:46
Show Gist options
  • Save Clancey/f3766a0b19869bd74eb94ad0d1195929 to your computer and use it in GitHub Desktop.
Save Clancey/f3766a0b19869bd74eb94ad0d1195929 to your computer and use it in GitHub Desktop.
public class VectorImageViewRenderer : ImageRenderer
{
static readonly NGraphics.IPlatform Platform = new AndroidPlatform();
protected override void OnElementChanged(ElementChangedEventArgs<Image> e)
{
base.OnElementChanged(e);
if (e.OldElement == null)
{
this.DrawImage();
}
}
protected override void OnElementPropertyChanged(object sender, PropertyChangedEventArgs e)
{
base.OnElementPropertyChanged(sender, e);
DrawImage();
}
async void DrawImage()
{
var vectorImage = (VectorImageView)Element;
int width = (int)Element.WidthRequest;
int height = (int)Element.HeightRequest;
if (width == 0 || height == 0)
{
return;
}
var image = await ImageCacheService.GetImage(vectorImage.Vector, width, height, vectorImage.Color);
Control.SetImageDrawable(image);
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment