我已经在Xamarin环境工作了2年,而且大多数时候我都使用过Xamarin.Forms.但是,我不知道Xamarin Cross Platform是什么?谁能提供一些结构差异?
我一直致力于将我们的应用程序从 Xamarin.Forms 迁移到 .NET MAUI。我们的应用程序几乎没有绘图功能,用户可以用手指进行绘图。我们在 Xamarin.Forms 中使用TouchTrackingnuget 包,但它与 .NET MAUI 不兼容。
以下是TouchTracking我们经常使用的软件包中的一些 API:
绘制页面.xaml
<Grid BackgroundColor="White">
<skia:SKCanvasView x:Name="canvasView" PaintSurface="PaintingCanvasEnvent" />
<Grid.Effects>
<tt1:TouchEffect Capture="True" TouchAction="OnTouchEffectAction"/>
</Grid.Effects>
</Grid>
Run Code Online (Sandbox Code Playgroud)
DrawPage.cs
void OnTouchEffectAction(object sender, TouchActionEventArgs args)
{
SKPoint current = args.Location;
switch (args.Type)
{
case TouchActionType.Pressed:
//codes here ...
break;
case TouchActionType.Moved:
//codes here
break;
case TouchActionType.Released:
//codes here
break;
case TouchActionType.Cancelled:
//codes here
break;
}
}
Run Code Online (Sandbox Code Playgroud)
在Xamarin.Forms中,该TouchTracking包允许我们检测触摸事件,并且我们可以获得所有触摸ID(因为TouchTracking可以检测多个手指)及其坐标。
那么我如何实现TouchTrackingnuget包或某种可以实现上述要求的代码呢?