System.MissingMethodException:找不到类型SkiaSharp.Views.Forms.SKCanvasView的默认构造函数?

时间:2018-04-23 23:11:09

标签: android xamarin xamarin.forms skiasharp

我正在尝试在Android上使用Skiasharp,我得到了这个例外, 可能是什么原因?

代码:

<skia:SKCanvasView x:Name="canvasView"
               PaintSurface="canvasView_PaintSurface"
               EnableTouchEvents="true" 
               VerticalOptions="FillAndExpand"
               Touch="OnTouch"/>

在C#文件

private void canvasView_PaintSurface(object sender,SKPaintSurfaceEventArgs args)
        {
            SKSurface sKSurface = args.Surface;
            SKCanvas canvas = sKSurface.Canvas;
            canvas.Clear(SKColors.White);
            drawPerformerPlatforms.setCanvas(canvas);
            scoreViewerField.runFrame();
        }

2 个答案:

答案 0 :(得分:2)

将链接设置为无是一种解决方法,而不是真正的解决方案。您的问题是链接器删除对Skia类的引用。您需要在链接过程中保留Skia库。有关更多信息,请参阅以下文章。

https://docs.microsoft.com/en-us/xamarin/android/deploy-test/linker

答案 1 :(得分:-1)

好的,我找到了答案, 右键单击Android项目 - &gt;属性 - &gt; Android选项

查找链接并将其设置为无。

enter image description here

然后重建您的项目