xamarin crossplatform帆布

San*_*ker 4 c# canvas xamarin

我正在调查Xamarin作为我们的跨平台解决方案的选项.对我们而言,我们可以创建自己的自定义交互式控件至关重要.

示例(http://devcenter.wintellect.com/jprosise/supercharging-xamarin-forms-with-custom-renderers-part-5)我已经看过如何创建自定义渲染控件.不幸的是,他们都基本上展示了如何根据平台不同地渲染到Canvas.这对我们来说是不可接受的.

是否有真正的跨平台方式来创建Xamarin自定义渲染控件而无需在每个平台特定实现中编写相同的绘图逻辑?

Dan*_* D. 5

我最近不得不做出同样的决定,最终我决定使用SkiaSharp.

  • SkiaSharp是一个.NET绑定到Skia库并继承了这个库的特性和功能,所以在某种程度上它也可以受益于原始的Skia文档/示例/社区
  • SkiaSharp使用了Android和Chrome的实际功能.此外,还有硬件/ GPU加速画布和视图.
  • 偏爱NGraphics的唯一理由是支持SVG,但现在从2016年11月发布的1.55版本开始,SkiSharp支持加载.svg文件.
  • Xamarin还发布了Xamarin.Forms和Xamarin Android和iOS平台(SkiaSharp Views&Layers)的库.
  • 任何Xamarin产品都不仅通过Github提供支持,还提供Xamarin网站和论坛以及Xamarin用户社区.
  • 使用Xamarin,未来可以更好地开发和改进库.
  • 单个开发人员可能难以改进或保持项目多年.