Xamarin 触摸跟踪(用于使用 SkiaSharp 绘图)

Xamarin Touch Tracking (for drawing with SkiaSharp)

今天,我还有一个关于 Xamarin 的问题。在 Xamarin 文档中有一些关于 Touch Tracking 的内容,我想要的是使用 SkiaSharp 命名空间作为用户输入进行一些绘图。所以,用户用他的手指在 BoxView 或类似的东西上画东西。

问题:很难找到命名空间,xamarin 文档中没有任何踪迹。只是名字是"TouchTracking",我也需要"TouchEffects"。

我在谷歌上搜索了一下,我得到的只是一些 0.1.0 beta 的东西,其中 TouchEffects 甚至不在同一个命名空间中,但它们在提供的代码示例中,这并不重要,但一个我发现它不适用于跨平台,这让我很困扰,因为如果可能的话,我有志于通过跨平台做所有事情。

那么触摸绘图有跨平台的解决方案吗?

So are there cross-platform solutions for touch drawing?

你可以参考这篇文章:Invoking Events from Effects.

  • 在 Xamarin.Forms 控件中实现低级多点触控手指跟踪。

相关示例:Touch-Tracking Effect Demos

  • 此示例演示了实现多点触控手指跟踪的效果,并展示了如何从效果中触发事件。

我真的很讨厌回答我自己的问题,但我偶然发现,SkiaSharp 实际上支持我们需要的一切。这太棒了,因为在我的 google 研究之后,我发现每个人都在寻找它,而且似乎只有 MR Gestures 确实支持我正在寻找的东西。 关键点: SKCanvasView 有一个带有参数(对象,SKTouchEventArgs)的 Touch 事件。这些事件参数提供了在表面、位置、动作类型(按下、释放、退出、进入、取消……)上绘制所需的一切 请注意:您需要通过设置 'Handled' true 来启用处理,否则事件参数将 return 只是按下。 此外,您还必须在创建 SKCanvasView 时启用触摸输入。

有人应该将此添加到上一个答案中提供的页面。